1

我将如何从第二个按钮重新打开第一个按钮[self firstButton:sender.enabled = Yes];只能将其关闭。编译器给了我一个关于以这种方式关闭按钮的警告。因此,如果有更好的方法可以从第二个按钮将其关闭,请告诉我如何打开和关闭它。

-(IBAction)firstButton:(UIButton *)sender{
if(firstButton is clicked){
//Turn firstButton off
((UIButton *)sender).enabled = NO;
}
}

-(IBAction)secondButton:(UIButton *)sender{
if(secondButton is clicked)
{
//Turn firstButton BACK ON?
[self firstButton:sender.enabled = Yes];
}
}

谢谢!!

4

2 回答 2

2

您可以使用为每个按钮设置 ivarsIBOutlet

IBOutlet UIButton *firstButton, *secondButton;

然后将它们链接到 Interface Builder 中的正确按钮。

然后,您可以使用这些 IBAction 来完成您正在寻找的内容。

-(IBAction)firstButtonClicked:(id)sender
{
    [firstButton setEnabled:NO];
}

-(IBAction)secondButtonClicked:(id)sender
{
    [firstButton setEnabled:YES];
}
于 2013-08-30T00:05:18.517 回答
1

您是否尝试从每个按钮切换另一个按钮的状态?如果是这样,这应该会有所帮助。首先使用 viewWithTag: 来获取对另一个按钮的引用。这将要求您正确地将每个按钮的标签属性分配给下面指定的相同标签。然后,您可以简单地将按钮启用状态设置为!它当前的启用状态。这将切换它。开到关,关到开。

-(IBAction)firstButton:(UIButton *)sender
{
    UIButton *otherButton = (UIButton *)[self.view viewWithTag:33];
    [otherButton setEnabled:!otherButton.enabled];
}

-(IBAction)secondButton:(UIButton *)sender
{
    UIButton *otherButton = (UIButton *)[self.view viewWithTag:44];
    [otherButton setEnabled:!otherButton.enabled];
}
于 2013-08-29T22:06:12.020 回答