翻譯:http://www.joshsunshine.me.uk/2012/02/29/ios-development-remove-old-notifications-from-notification-center.html
不逐字翻譯了,只是大體說一下。
看作者的意思,應該是他經常收到N多通知,而通過其中一條通知打開一個app以后,發現那個app的其它通知還在通知中心。作者不喜歡這樣的情況。我以為我也存在的這樣的情況,馬上檢查了一下,發現沒有。看來是少數app的問題。但是也記錄一下。作者總結的從通知中心移除通知的三種方法:
1.將app的BadgeNumber設為0,就是app圖標右上角那個
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
2.如果BadgeNumber本身就是0的情況,可以先將其設1再設置成0
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
3.如果以上的辦法都不好使的話,那就用本地通知欺騙一下。
UIApplication* application = [UIApplication sharedApplication];
NSArray* scheduledNotifications = [NSArray arrayWithArray:application.scheduledLocalNotifications];
application.scheduledLocalNotifications = scheduledNotifications;
就這么多了,我仔細想了一下,為什么我的應用從其中一條通知打開的時候,其它的通知消失掉:
因為我在程序啟動的時候就執行了第一條:)