我遇到了我的UIButtons
之一的行爲問題。我試圖讓它成爲切換按鈕,但我遇到了下面的問題。iPhone SDK - UIButton高亮狀態問題
我的代碼:
UIButton *likeButton = [[UIButton alloc] initWithFrame:CGRectMake(horizontalOffset+buttonWidth, verticalOffset, buttonWidth, buttonHeight)];
[likeButton setImage:[UIImage imageNamed:@"like-off.png"] forState:UIControlStateNormal];
[likeButton setImage:[UIImage imageNamed:@"like-on.png"] forState:UIControlStateHighlighted];
[likeButton setImage:[UIImage imageNamed:@"like-on.png"] forState:UIControlStateSelected];
[likeButton addTarget:self action:@selector(likeButtonPressed:) forControlEvents:UIControlEventTouchUpInside];
其觸發的方法:
-(void)likeButtonPressed:(id)sender {
UIButton *button = (UIButton *)sender;
[button setSelected:!button.selected];
}
我看到的行爲是,當我點擊該按鈕,(和高亮顯示),它的工作原理並且'like-on.png'圖像用於突出顯示的狀態,並且它仍保留在'選定的'狀態中。
但是,當我再次點擊該按鈕時,將其切換爲關閉狀態時,按下我的手指時會看到一個灰色突出顯示的狀態。當我鬆開手指時,我看到'喜歡'圖像按預期顯示。
我想避免看到灰色突出顯示的狀態,當我按下按鈕時,我將其切換關閉。相反,我想,以確保在撥動斷高亮顯示狀態使用「像-on.png」形象代碼中指定。
這是怎麼回事?我的代碼可能不正確的任何想法?
非常感謝, 佈雷特
就是這樣!而我剛剛學到了一些東西;-)我不知道如何指定多個狀態。非常感謝!!! – Brett
兩者中的哪一個確實解決了你的問題? – DarkDust
突出顯示狀態和選定狀態之間有什麼區別?每一個發生在什麼時候? – zakdances