2013-05-14 61 views
1

我用[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]清除證件號碼。它工作正常,但遠程通知同時被刪除。如何清除徽章數量,同時保持通知中心

還有很多其他的問題,以清除通知中心,但我不希望清除它們。我只想清除徽章的數量,同時保留通知。

有什麼辦法可以達到這個目的嗎?

回答

1

一個哈克的方式是將徽章計數設定爲負值。負值不顯示在主屏幕上,因爲它們不爲零,所以不會導致通知中心被清除。

嘗試[[UIApplication sharedApplication] setApplicationIconBadgeNumber:-1],看看它是否會導致您需要的用戶面臨的問題。

+0

奇怪的是,這不再適用於我......不知道爲什麼,我認爲它是在幾個星期前工作。 – TahoeWolverine 2016-02-25 02:54:50

+0

我的應用程序有什麼奇怪的是,在設置爲-1後立即檢查徽章獲取器的結果爲0.也許無論是將值更改爲0都觸發相同的通知中心清除,當我將其設置爲0時發生... – TahoeWolverine 2016-02-25 04:02:47

+0

This似乎不再適用於iOS9。 – 2016-08-23 22:39:48

1

據我所知,這是不可能徽章值設置爲0的應用標誌的值將被示出,只有當其大於0,否則(在0的情況下),將只是由隱藏IOS。解決此

+0

對不起歧義。我想清除徽章價值,同時保留通知中心。 – rch850 2013-05-15 00:22:29

1
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:-1] 

它不適合我。

但我嘗試這是好的。

UILocalNotification *notification=[[UILocalNotification alloc]init]; 
notification.applicationIconBadgeNumber=-1; 
[[UIApplication sharedApplication] presentLocalNotificationNow:notification];