2
A
回答
3
获取量,因为在一定的NSDate:
[[NSDate date] timeIntervalSinceDate:startingDate];
[NSDate的日期]返回当前的NSDate对象,并且那等于当前日期和时间。
1
我认为你可以实施一个循环计时器,每30秒钟进行一次(不要太快),这将轮询所有未决的请求并更新每个订单的倒计时,并向你发出所有达到倒数的订单的信号。
例如:假设您需要5分钟的订单。然后,你将加入5 * 60秒钟,将当前日期计算订单将准备日期:
NSDate *orderReadyAt = [NSDate dateWithTimeIntervalSinceNow:5*60];
然后你会在此日期订单结束日期属性。例如:
Order *myOrder = [[Order alloc] init];
... make your order here ...
myOrder.readyDate = orderReadyAt;
启动应用程序时,您将定义一个反复出现的计时器,将触发每30秒就会调用“countdownCheck”功能:
[NSTimer scheduledTimerWithTimeInterval:30 target:self selector:@selector(countdownCheck) userInfo:nil repeats:YES];
在这一点上,你必须在做什么你countdownCheck是遍历您的订单情况,并为他们每个人的计算剩余时间:这种做法是不是时间关键
-(void)countdownCheck {
for(Order *aOrder in allOrders) {
NSTimeInterval secondsRemaining = [aOrder.readyDate timeIntervalSinceNow];
//... do something: update your GUI, show an alert if secondsRemaining<0...
}
}
显然,只需要你必须在30秒的限制内运行countdownCheck内的代码,这当然绰绰有余。只要你的循环足够快,你可以理想地将它设置为1秒。
相关问题
- 1. 如何使用NSDate或NSCalendar制作计数器或计时器?
- 2. 如何制作计数器?
- 3. 如何使用Python制作点火设计器的计数器
- 4. 如何使用NSDate运行倒计时?
- 5. 使用计数器制作Python3变量
- 6. 使用javascript制作min:sec计数器
- 7. 如何制作倒数计时器?
- 8. 如何制作倒数计时器?
- 9. Cocos2d,如何制作分数计时器
- 10. 如何制作PHP计数器?
- 11. 如何制作计时器?
- 12. 如何制作计时器?
- 13. 如何使用javascript制作多个计数器?
- 14. 如何使用clock_gettime制作精确的倒数计时器?
- 15. 如何在javascript中使用画布制作计数器
- 16. 如何使用opengl制作功率计?
- 17. 制作计数器的Python
- 18. 如何用RxJS Observables制作倒数计时器?
- 19. 如何制作通用点击计数器?
- 20. 如何使用计数器作为函数中的参数?
- 21. 使用Swing制作计算器
- 22. 不使用NSTimer制作计时器(swift)
- 23. 如何使用计时器在android中制作StopWatch?
- 24. 如何使用mysql和laravel制作udemy计时器
- 25. 如何制作一种使用html和javascript的计算器?
- 26. 如何使用扩展片段来制作计算器
- 27. 如何使用逗号方法制作计算器
- 28. 如何使用PHP和HTML制作贷款计算器?
- 29. 如何使用var作为计数器作为累积值
- 30. 明文NSDate如何工作?
我怎么能秒通过NSDate? – 2011-02-03 08:49:43
@Veer NSDate不能使用秒,它是一个日期。如果通过调用dateObject = [[NSDate date] retain]将开始时间存储在NSDate对象中,然后调用此方法来计算所有应设置的时间* – 2011-02-03 09:36:31