仅允许用户按一次UIButton

时间:2012-09-06 13:51:41

标签: iphone ios xcode ipad

我正在尝试设计应用程序的界面,我只想让用户按一次UIButton来获得结果。按下按钮后有什么办法可以锁定按钮吗?只有在按下另一个按钮时才释放锁定?

由于

5 个答案:

答案 0 :(得分:10)

您可以将按钮设置为单击后禁用:

- (IBAction)clicked:(id)sender {
    //See all buttons enabled
    //Try a loop or manually

    ((UIButton *)sender).enabled = NO;
}

答案 1 :(得分:2)

当然可以。只需使用UIButton的属性enabled即可。当用户按下它时,将enabled设置为NO:[myButton setEnabled:NO];,并在以后需要再次启用时设置YES

答案 2 :(得分:1)

当调用按钮的选择器方法时,只需禁用Uibutton。 如在[aButton setEnabled:False];中,当用户点击另一个按钮重新启用第一个按钮并禁用第二个按钮时,如[bButton setEnabled:False]和[aButton setEnabled:True],

希望它有所帮助。

答案 3 :(得分:1)

这是James Paolantonio对Swift 4的回答的更新版本

@IBAction func clicked(_ sender: Any) {
    //See all buttons enabled
    //Try a loop or manually
    (sender as? UIButton)?.isEnabled = false
}

答案 4 :(得分:0)

您需要引用第一个按下的按钮..在下一次按下时,您可以启用旧按钮并禁用新按钮

Button *disabledButton;
- (IBAction)clicked:(id)sender {        
   if (disabledButton)
     disabledButton.enabled = YES;

   disabledButton = ((UIButton *)sender);
   disabledButton.enabled = NO;
 }