我正在开发一个iPhone应用程序(在Objective-C中),我正在努力使其成为某种'动作监听器' 不断检查查看当前日期和时间是否与填充了事件对象的NSMutableArray
中的第一个对象(从用户日历中检索)的日期和时间相匹配。
我的问题是我无法弄清楚如何这样做,而我的其余代码继续运行,因为现在我有一个for
循环运行以不断检查,这会阻止我的代码,并阻止应用程序继续运行。如果有人知道任何类型的教程,或者有解释,我会非常感激。
谢谢! 的
答案 0 :(得分:1)
设置NSTimer以在所需日期触发。 此处的此NSTimer类别可用于此目的:https://github.com/adamjernst/NSTimer-AbsoluteFireDate
您还可以尝试创建和安排UILocalNotification以获取特定日期的通知。
答案 1 :(得分:0)
您可以使用NSTimer
编辑:请参阅phix23的答案以获得更可靠的" fireDate"用于iOS的代码。
Apple文档:NSTimer
答案 2 :(得分:0)
获取当前时间和事件时间之间的时间,并使用dispatch_after
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, timeDifference * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
//Your code
});