我突出显示的图片显示不同。 这是我的情况。
[button setImage:"normal image" forState:UIControlStateNormal];
[button setImage:"hover image" forState:UIControlStateHighlighted];
[button setImage:"hover image" forState:UIControlStateSelected];
- (IBAction)buttonTouched:(id)sender {
UIButton *selectButton = sender;
if (_currentSelectedTabButton.tag == selectButton.tag) {
//TODO refresh view controller
return ;
}
_currentSelectedTabButton.selected = NO;
selectButton.selected = YES;
_currentSelectedTabButton = selectButton;
}
当按钮处于选中状态时,突出显示的图像显示不正确。 有什么想法吗?
答案 0 :(得分:2)
这是因为你要设置setImage:forControllState:UIControlStatesSelected和setHighlighted图像,当你第一次按下按钮时,它的状态被取消选中,显示高亮显示的图像,再次按下按钮,它显示所选图像,因为现在按钮处于选中状态。 (简而言之,突出显示的图像仅在按钮的非选定状态下工作)。
答案 1 :(得分:0)
UIControlStateSelected | UIControlStateHighlighted是一个独立于UIControlStateHighLighed
的状态