我正在开发一款通过UILocalNotifications每五分钟向用户发送提示的应用。问题是,如果你暂时不使用你的手机,通知会堆积起来,当你解锁手机时,你必须一个接一个地解雇它们,如果你没有使用手机就会变得非常烦人相当长一段时间。单击警报上的操作按钮会将您返回到应用程序,但即便如此,您仍需要完成所有通知。
有没有办法解除所有已经通过一次点击触发的通知?
感谢您的帮助。
迈克迈克答案 0 :(得分:1)
为了取消所有UIlocalNotifications,我只需要创建这个简单的方法:一行代码就足够了:
- (void)application:(UIApplication *)app didReceiveLocalNotification :(UILocalNotification *)notification {
[[UIApplication sharedApplication] cancelAllLocalNotifications];
}
你就是。不管怎样,谢谢。
答案 1 :(得分:0)
在安排下一个闹钟之前,您最好取消之前的所有通知,然后设置新的闹钟,
UIApplication* app = [UIApplication sharedApplication];
NSArray* oldNotifications = [app scheduledLocalNotifications];
// Clear out the old notification before scheduling a new one.
if ([oldNotifications count] > 0)
[app cancelAllLocalNotifications];