【发布时间】:2012-05-29 05:29:08
【问题描述】:
我突出显示的图像显示不同。 这是我的情况。
[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;
}
- 触摸按钮。
- 按钮显示突出显示的图像。 (正确的图片)
- 按钮的状态设置为“选中”
- 触摸按钮。
- 按钮显示不同的高亮图像。
当按钮处于选中状态时,突出显示的图像显示不正确。 有什么想法吗?
【问题讨论】:
-
如果您在按下按钮时始终将按钮设置为选中(selectButton.selected = YES;),那么在第一次单击后它不会改变状态,这是故意的吗?
-
这是我来源的一部分。我将附加整个方法的来源。它总是被选中。如果我选择另一个按钮,之前选择的按钮的选定属性更改为 NO,当前选定的按钮的选定属性更改为 YES。
-
这是因为当你设置 setImage:forControllState:UIControlStatesSelected;