用户单击时如何禁用 UIButton 的突出显示

Posted

技术标签:

【中文标题】用户单击时如何禁用 UIButton 的突出显示【英文标题】:how to disable highlight for UIButton when the user click on 【发布时间】:2012-03-08 14:22:29 【问题描述】:

我正在做一个 UIButtion,一旦单击它就会突出显示,而当它再次单击时它不会突出显示。单击时我无法取消突出显示。我在下面做了一个事件监听器

(IBAction)ButtonClicked:(UIButton*)sender

[sender setHighlighted:!sender.isHighlighted];

编辑: 目标动作是

 [button addTarget:self action:@selector(ButtonClicked:) forControlEvents:UIControlStateSelected];

【问题讨论】:

【参考方案1】:

[sender setSelected:!sender.isSelected] 试试这个:) 如果这是你想要的

【讨论】:

[按钮 addTarget:self action:@selector(ButtonClicked:) forControlEvents:UIControlStateNormal]; 对不起,我犯了一个错误。把这一行: [button addTarget:self action:@selector(ButtonClicked:) forControlEvents:UIControlEventTouchUpInside];并在您的触摸方法中放置 [sender setSelected:!sender.isSelected]。它必须工作 谢谢,它有效。但似乎该按钮不会突出显示,直到我单击它两次然后它才能正常工作。 对不起,它对我来说非常有效。我只是尝试了同样的事情:( [sender setHighlighted:!sender.isHighlighted];它对我更有效,而不是 [sender setSelected:!sender.isSelected]。谢谢你,问题出在事件控制器上。

以上是关于用户单击时如何禁用 UIButton 的突出显示的主要内容,如果未能解决你的问题,请参考以下文章

如何禁用 UIButton 突出显示操作

单击选定的 UIButton 时未显示 UIButton 突出显示状态

禁用 UIButton 的突出显示 UIControl 状态

如何禁用 UITableViewCell 突出显示?

在 Storyboard 和 Swift 2 中禁用 UIButton 突出显示

UIButton 状态