取消具有重复间隔的 UILocalNotification

Posted

技术标签:

【中文标题】取消具有重复间隔的 UILocalNotification【英文标题】:Cancel a UILocalNotification with repeat interval 【发布时间】:2015-09-03 01:54:12 【问题描述】:

我正在做一个具有重复间隔的警报应用程序。我的问题是,即使用户单击本地通知,返回应用程序,然后返回手机主屏幕,UILocalNotification 仍然每分钟触发一次。我知道[[UIApplication sharedApplication] cancelAllLocalNotifications]; 并将它放在我的viewDidLoad 方法中。有什么建议可以解决这个问题吗?

【问题讨论】:

【参考方案1】:

把它放在viewDidLoad 在某些情况下是好的,但不是你的。想想viewDidLoad 何时被调用:

在控制器的视图加载到内存后调用。

换句话说,下次调用它是在您的小ARC 朋友从内存中释放它之后。所以,是的,最终cancelAllLocalNotifications 会再次被调用,而不是当用户将应用程序置于后台然后将其返回到前台时,因为它在内存中仍然有一个家;下次将该特定视图加载到内存中时将调用它。

此外,这可能不是一个好的逻辑,因为每个用户都会发生这种情况,即使他们不想取消重复。

最终,您将不得不创建额外的逻辑来破译哪些用户使用适合您和您的项目的任何资源点击“暂停”或“取消”。就个人而言,我会指导您使用基于类别的通知,这样您就可以根据需要取消它,而不是“以防万一”。 See here 如何设置。

【讨论】:

以上是关于取消具有重复间隔的 UILocalNotification的主要内容,如果未能解决你的问题,请参考以下文章

取消堆叠具有重复项的多索引

如何从具有多级重复列的excel表中取消堆叠df?设置多索引?

CSS中 li 之间的间隔如何取消?

R中具有不同间隔的序列:匹配传感器数据

iOS UIButton 禁止连续点击问题/快速点击/重复点击/多次点击 2021-12-03

周期信号的频谱的谱线间隔与啥有关