我如何使用NSTimer进行倒计时或甚至可能?我已经尝试了几件事并且在处理这些数字时遇到了一些错误,但是我想要发生的事情就是当我的计时器被激活时它从5点开始,每秒钟开始它会消失我想要一个新数字出现在我的标签上......
if(Timer1 == 5:00){
// label将显示5
}
由于某种原因,这段代码给我一个使用5:00的错误..我也不认为它甚至会被调用因为计时器没有激活方法,直到时间用完所以我有点卡住:/任何帮助?
答案 0 :(得分:1)
5:00不是C或Objective-C中的有效数字。
您要做的第一件事是阅读developer.apple.com上的Objective-C教程的介绍,然后,可能会通过某种“编程iPhone”的书来跟进。
您的问题表明完全缺乏理解。这没什么不对 - 只是期望在你面前做一堆学习/学习。
一旦你这样做,你就能理解这一点:
重复的NSTimer无法保证每N分钟/秒/小时/天(无论您的间隔是多少)都会发射。有污点;取决于定时器发生时会发生什么,这可能会有很大的影响。
因此,您希望创建一个周期性计时器,但是通常需要更新UI,然后使用不同的机制确切地计算出已经过了多长时间。
抓斗的开始时间 - [NSDate date]
效果很好 - 存储它什么地方,然后用它来确定多少时间其实已经过去了,当计时器触发(通过抓住另一个[NSDate date]
,然后减去首先从它获得经过的时间。)
答案 1 :(得分:0)
而不是这样做: 在任何需要计时器的地方插入以下代码
[NSTimer scheduledTimerWithTimeInterval :(秒的时间间隔) 目标:自 选择:@选择(timerFired1 :) 用户信息:无 重复:NO]; 强>
- (void)timerFired1:(NSTimer *)计时器 { //在指定的时间间隔之后执行您想要执行的操作 } 强>