7
-(void)setState:(id)sender
{
    UIButton* button = (UIButton*)sender;
    BOOL buttonBool = ([button state]==selected : YES ? NO);
    [sender setSelected:buttonBool++];

}

这是我的想法,但我无法弄清楚调用功能的按钮的实际状态。任何调用此功能的按钮都应在默认状态和选定状态之间切换,以便它像开关一样工作。我只需要拥有自己的背景图形,否则我使用了开关。

那么,任何人都可以纠正我的想法吗?

4

2 回答 2

20

试试这个方法:

-(void)setState:(id)sender
{
    UIButton* button = (UIButton*)sender;
    button.selected = !button.selected;
}
于 2010-07-21T14:51:53.100 回答
1

斯威夫特 3 方式:

func setState(button: UIButton) {
    button.isSelected = !button.isSelected
}

(感谢 @nadi-hassan 提供的 Swift 3 技巧。)

于 2015-05-03T02:02:11.060 回答