有没有一种方法可以通过编程方式从通知托盘中删除/关闭UILocalNotification
。
我可以取消通知,该通知会将通知从
[[UIApplication sharedApplication] scheduledLocalNotifications]
这是我需要做的
执行完 Action 后(即用户点击通知后),我需要从NotificationTray中删除
UILocalNotification
编辑:
我可以从
NSNotificationCenter
删除通知。我想从通知托盘中删除特定的通知。就像用户按下清除按钮以清除属于特定应用程序的所有通知一样。 最佳答案
您可以使用以下方法取消所有通知:
[[UIApplication sharedApplication] cancelAllLocalNotifications];
如果要删除特定的通知,则可以使用通知对象的
userinfo
,在创建本地通知时,向该对象添加唯一的ID。以后,您可以使用该ID删除本地通知。为此,您可以使用以下代码:
NSString *notificationId = @"id_to_cancel";
UILocalNotification *notification = nil;
for(UILocalNotification *notify in [[UIApplication sharedApplication] scheduledLocalNotifications])
{
if([[notify.userInfo objectForKey:@"ID"] isEqualToString:notificationId])
{
notification = notify;
break;
}
}
[[UIApplication sharedApplication] cancelLocalNotification:notification];
关于iphone - 以编程方式从通知托盘中删除UILocalNotification,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14142434/