2010-07-22 168 views
0

大家好,更改按鈕的背景圖像?

我創建使用IB兩個自定義按鈕,我已經設置了背景image.Now我想,當用戶選擇一個按鈕,它的背景圖片應該改變和新的背景圖像應該持續,直到用戶按其他button.how要做到這一點?

回答

2

在這種情況下,您必須自己管理按鈕的狀態。
這意味着您應該爲每個按鈕保留一個BOOL成員,該按鈕將指示該按鈕是否被選中。
或者,如果您一次只有一個選定的按鈕,那麼您可能會持有對所選按鈕的引用。
在輕拍事件中,您應該通過將上次選擇的按鈕的圖像更改爲未選擇的圖像以及將當前所選按鈕的圖像更改爲選定的按鈕圖像來管理上述狀態。

你可以改變這樣的形象:

[button setBackgroundImage:[UIImage imageNamed:@"selected_button.png"] forState:UIControlStateNormal]; 
0

您可以結合兩種方法可以這樣做:

- (void)setImage:(UIImage *)image forState:(UIControlState)state 

調用它使用[self.button setImage:YOUR_IMAGE forState:UIControlStateSelected];

然後你可以設置按鈕被選中。 [self.button setState:UIControlStateSelected]。當選擇另一個按鈕時,您將狀態恢復到正常狀態。