我有一个关于将NSTimer与标签结合使用的问题。我还没有找到答案,但这可能是基本的。我还在学习iOS ...
我的应用是一个包含"模式"按钮。默认情况下,我的计算器在模式1中启动,标签为" messageText"陈述"没有错误。"当按下模式按钮时,我想要UILabel" messageText"显示文字"模式2"在它变回"没有错误之前3秒钟。"
我不确定如何将NSTimer与我的标签集成。这是我到目前为止所拥有的。我的问题是变量* timer未使用。我如何仅与我的messageText标签结合使用,而不是其他标签?任何帮助将不胜感激:
-(IBAction)mode
{
years.text = @"0";
months.text = @"0";
days.text = @"0";
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:3 target: self selector:@selector(timerEnded) userInfo: nil repeats:NO];
messageText.text = @"Mode 2";
}
-(void)timerEnded
{
messageText.text = @"No Errors";
}
答案 0 :(得分:2)
您声明并初始化名为timer
的变量,但您从不使用它。
要消除警告,请在其他地方使用变量,或者不创建变量。只是做:
[NSTimer scheduledTimerWithTimeInterval:3 target: self selector:@selector(timerEnded) userInfo: nil repeats:NO];
如果您可能需要使计时器无效(停止),您应该在ivar中保留一个引用,以便您可以在其上调用invalidate
。