开发者社区 问答 正文

iPhone-方法关联在一个if语句中

如何在一个if语句中检测一个方法是否运行?比如:

if ([(UIButton *)sender isEqual:blueButton] && **showBlueText method is running** )
{
    Keep playing.
}
else if ([(UIButton *)sender isEqual:blueButton] && **showBlueText method is NOT running** )
{
    Game over.
}

-(void)showBlueText
{
blueText.hidden = NO;
[self performSelector:@selector(hideText) withObject:nil afterDelay:textDelay];
[self performSelector:@selector(showGreenText) withObject:nil afterDelay:hideDelay];
}

说明一下,showBlueText自身的循环,想检测一下showBlueText现在是不是在运行

展开
收起
爵霸 2016-05-27 11:12:04 1714 分享 版权
1 条回答
写回答
取消 提交回答
  • // new iVar
    BOOL textIsShowing;
    
    // method
    -(void)showBlueText {
      textIsShowing = YES;
      blueText.hidden = NO;
      [self performSelector:@selector(hideText) withObject:nil afterDelay:textDelay];
    }
    
    // method
    - (void)hideText {
      textIsShowing = NO;
      blueText.hidden = YES;
    }
    
    // button press
    - (void)buttonPressed {
      if (textIsShowing) {
        NSLog(@"Keep playing");
      } else {
        NSLog(@"Game over");
      }
    }

    这样就可以记录你的状态了

    2019-07-17 19:17:26
    赞同 展开评论
问答地址: