我使用buttonWithType:
创建了一个UIButton
按钮。
现在我需要找出如何手动更改按钮的状态。有时我需要将其设置为“禁用”状态。
我阅读了UIButton
的文档,但似乎没有找到任何关于手动设置按钮状态的内容。
如果您有任何想法,将不胜感激。
我使用buttonWithType:
创建了一个UIButton
按钮。
现在我需要找出如何手动更改按钮的状态。有时我需要将其设置为“禁用”状态。
我阅读了UIButton
的文档,但似乎没有找到任何关于手动设置按钮状态的内容。
如果您有任何想法,将不胜感激。
你尝试过 button.enabled = NO;
吗?
Swift 5.0
button.isEnabled = false
还有这些状态:
button.highlighted = NO;
button.selected = NO;
Objective C:
button.selected = Yes;
button.highlighted = NO;
button.enabled = Yes;
Swift 4:
button.isSelected = true
button.isEnabled = true
if (button.state == .selected) {
//do something
}
UIButton *btnCheck=[UIButton buttonWithType:UIButtonTypeCustom];
if(btncheck isselected])
{
btncheck.selected=FALSE;
}
else
{
btncheck.selected=TRUE;
}
for Swift 3 you can use
button.isSelected = true
isSelected = true
。UIButton
的外观:if sender.titleLabel?.text == correctAnswer {
sender.isSelected = true
// Set title color and image based on 'selected' state.
sender.setTitleColor(.systemBlue, for: .selected)
sender.setImage(Utilities.sharedInstance.returnAnswerButtonImage(for: .correctlyAnswered).withRenderingMode(.alwaysOriginal), for: .selected)
sender.backgroundColor = .white
sender.tintColor = .systemBlue
// moveToNextQuestion()
} else {
sender.isSelected = true
sender.setTitleColor(.systemBlue, for: .selected)
sender.setImage(Utilities.sharedInstance.returnAnswerButtonImage(for: .incorrectlyAnswered).withRenderingMode(.alwaysOriginal), for: .selected)
sender.backgroundColor = .red
sender.tintColor = .systemBlue
}
对于任何想要更改按钮“状态”(而不是“启用”)的人来说,Stephen是正确的,“此属性只读 - 没有相应的setter方法。”
您真正想设置的是按钮单元格的状态。
[[myNSButtonOutlet cell] setState: NSOnState]; //Options NSOnState, NSOffState, NSMixedState