2010-04-01 67 views
4

我目前正在使用iPhone SDK。每秒更換一次以上的UIButton背景圖片

我有一個NSTimer更改UIButton的背景圖像。 一旦完成,它將再次觸發相同的動作(重置NSTimer)達預定次數。

我的問題是,如果我的NSTimer設置爲每秒執行一次以上。 (0.75,說)背景圖片不會改變。

我正在使用NSLog檢查事件是否觸發。但按鈕圖像將保持其原始狀態。

有什麼辦法可以每秒更換一次背景圖片嗎?

這是我的計時器:

[NSTimer scheduledTimerWithTimeInterval: tmpLvlSpeed 
            target: self 
            selector: @selector(simPressRed:) 
            userInfo: nil 
            repeats: NO]; 

和代碼來改變形象:

[btnRed setImage:[UIImage imageNamed:@"btn_red.png"] forState:UIControlStateNormal]; 

如果tmpLvlSpeed小於1.0,按鈕圖像永遠不會改變。即使simPressRed功能仍會觸發。

任何線索?有沒有可以修改的更新週期?

回答

3

您是否嘗試過使用setNeedsDisplay

[button setNeedsDisplay]; 
+0

謝謝!那就是訣竅。 – 2010-04-04 15:17:44

0

你有多少張圖片?從你給我們的東西,你只有一個形象,所以沒有形象不會改變。請發佈您的代碼,以便我們可以進一步幫助您

+0

這些按鈕是使用InterfaceBuilder創建的,所以我只有一行代碼來更改圖像。 – 2010-04-04 15:17:04

+0

好的,但你有多少張圖片? – 2010-04-04 21:43:16

+0

它只是兩個。 原始狀態,然後是我正試圖改變它的活動狀態。 – 2010-04-05 00:22:58