我正在开发一款应用程序,该应用程序具有可计入事件特定日期和时间的计时器:
destinationDate = [NSDate dateWithTimeIntervalSince1970:1403938831];
timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateLabel) userInfo:nil repeats:YES];
我试图实现的命令是这样的:当它达到0时,它开始新的倒计时到新的未来事件。
我对目标C很新,并且想知道我是如何做到的。
谢谢!
答案 0 :(得分:0)
我只会简单地说明主要方面:
我假设您有一个NSArray
的{{1}}订单和一个NSDates
的属性。
NSTimer
现在你需要一个方法,它返回第一个日期,但尚未通过。
@property (nonatomic, strong) NSArray *dates;
@property (nonatomic, strong) NSTimer *timer;
一个设置计时器的方法:
-(NSDate *)giveMeADate
{
for(NSDate *date in self.dates){
if([date laterDate:[NSDate date]] === date){
return date;
}
}
return nil;
}
最后更新-(void)setTimer
{
self.timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateLabel) userInfo:nil repeats:YES];
}
UILabel
所以重点是:你的计时器不计入事件,你的计时器滴答和滴答,你的应用程序就是逻辑。