据我所知,我们可以使用此方法识别iPhone设置中的时间是否已更改
- (void)applicationSignificantTimeChange:(UIApplication *)application
但是如果天变了,我想要一些会触发条件的行。
例如,今天是2014年3月10日,但是后来如果我从iPhone设置中改变了11月3日那天,那么我想知道上述方法中的相同内容。
任何人都请帮忙。
提前致谢。
答案 0 :(得分:1)
我建议您在每次应用启动时以及每次应用变为无效或进入后台时保存当前日期。
然后,当调用applicationSignificantTimeChange:
时,请使用保存的日期检查当前日期,以查看当天是否已更改。
答案 1 :(得分:0)
我刚刚尝试过,UIApplicationSignificantTimeChangeNotification
会在您通过系统设置手动更改日期时触发,而不仅仅是在午夜后更改日期时。
因此,您无需为手动更改日期执行任何其他操作,系统会调用applicationSignificantTimeChange
。
如果您确实需要强制执行仅在日期确实发生变化时采取行动,那么您当然可以存储您最后一次知道的日期并在applicationSignificantTimeChange
的实施中进行比较以防止如果由于某种原因,事件被触发但日期实际上没有改变,则不需要执行。