好吧,我在网上搜索过,甚至在几本书中寻找答案,因为我无法理解 NSTimer 的苹果文档。我正在尝试在同一视图上实现 2 个计时器,每个计时器都有 3 个按钮(开始 - 停止 - 重置)。
第一个计时器从 2 分钟开始倒计时,然后发出蜂鸣声。
第二个计时器从 00:00 开始无限期地计数。
我假设所有代码都将编写在 3 个不同按钮后面的方法中,但我在尝试阅读苹果文档时完全迷失了方向。任何帮助将不胜感激。
基本上,您想要的是每 1 秒触发一次事件,或者可能以 1/10 秒的间隔触发一次,并且您将在计时器计时时更新您的 UI。
下面将创建一个计时器,并将其添加到您的运行循环中。将计时器保存在某个地方,以便您可以在需要时终止它。
- (NSTimer*)createTimer {
// create timer on run loop
return [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerTicked:) userInfo:nil repeats:YES];
}
现在为计时器滴答编写一个处理程序:
- (void)timerTicked:(NSTimer*)timer {
// decrement timer 1 … this is your UI, tick down and redraw
[myStopwatch tickDown];
[myStopwatch.view setNeedsDisplay];
// increment timer 2 … bump time and redraw in UI
…
}
如果用户点击按钮,您可以重置计数,或者开始或停止滴答声。要结束计时器,请发送无效消息:
- (void)actionStop:(id)sender {
// stop the timer
[myTimer invalidate];
}
希望这可以帮助你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)