2013-05-14 63 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];