肯定有很多UIButton问题,我希望找到答案,但没有什么比这个特定的问题更好。
我有几个按钮,当程序运行时,我可以为任何按钮调用button.highlighted = YES;
并显示突出显示。
我想我可以使用同样的技术在按下按钮后将按钮的高亮状态设置为YES,然后在按下另一个按钮后将其设置为NO。这样,当前选择仍然突出显示。
例如:
-(IBAction) buttonPressed:(UIButton *)button
{
if (button.tag==1)
{
self.button1.highlighted=YES;
self.button2.highlighted=NO;
// do other program stuff here
}
if (button.tag==2)
{
self.button2.highlighted=YES;
self.button1.highlighted=NO;
// do other program stuff here
}
}
即使将highlighted = YES;
代码放在viewDidLoad中,亮点也能正常工作。但上面的代码不起作用。亮点不坚持。这些按钮有效,并完成了其他需要做的事情,但突出显示无法坚持下去。
我认为这应该是非常基本的。在任何按钮操作后,iOS会以某种方式自动将所有按钮高亮显示为NO吗?
答案 0 :(得分:0)
由于来自UIControl
的文档声明,您可能应该使用其他方式来呈现突出显示状态:
默认情况下,控件不是 突出显示。 UIControl自动 设置并清除此状态 触摸进入时自动进行 在跟踪期间以及何时退出 是一个修饰。
答案 1 :(得分:0)
您可以尝试使用'selected'属性而不是'highlight'属性。