手动设置UIButton状态

问题描述 投票:16回答:7

UIButton使用+ buttonWithType:

我需要弄清楚的是如何手动更改按钮状态。有时我需要将其设置为“禁用”。

我通读了UIButton文档,但我似乎无法找到有关手动设置按钮状态的任何信息。

任何想法将不胜感激。

ios objective-c iphone cocoa-touch uibutton
7个回答
45
投票

你尝试过button.enabled = NO;吗?

Swift 5.0

button.isEnabled = false

25
投票

还有州:

   button.highlighted = NO;
   button.selected = NO;

3
投票

您可以手动设置UIButton的状态。

UIButton *btnCheck=[UIButton buttonWithType:UIButtonTypeCustom];

if(btncheck isselected])
{
    btncheck.selected=FALSE;
}
else
{
    btncheck.selected=TRUE;
}

您可以根据您的要求对UIButton进行操作,例如在选择UIButton时执行某些操作但未选择UIButton。

希望对你有帮助....


2
投票

对于Swift 3,你可以使用

button.isSelected = true


2
投票

目标C:

button.selected = Yes;
button.highlighted = NO;
button.enabled = Yes;

斯威夫特4:

button.isSelected = true 
button.isEnabled = true

你也可以使用:(swift 4)

 button.state == .selected

0
投票

对于到达这里的人来说,要改变按钮的“状态”(而不是“启用”)。斯蒂芬是正确的“这个属性是只读的 - 没有相应的setter方法。”

你真正想要设置的是按钮单元格的状态。

[[myNSButtonOutlet cell] setState: NSOnState];  //Options NSOnState, NSOffState, NSMixedState
© www.soinside.com 2019 - 2024. All rights reserved.