我[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]
用来清除徽章编号。它工作正常,但同时删除了远程通知。
还有许多其他问题需要清除通知中心,但我不想清除它们。我只想在保留通知的同时清除徽章数量。
有什么办法可以做到这一点?
我[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]
用来清除徽章编号。它工作正常,但同时删除了远程通知。
还有许多其他问题需要清除通知中心,但我不想清除它们。我只想在保留通知的同时清除徽章数量。
有什么办法可以做到这一点?
解决此问题的一种巧妙方法是将徽章计数设置为负值。负值不会显示在主屏幕上,并且由于它们不为零,它们不会导致通知中心被清除。
尝试[[UIApplication sharedApplication] setApplicationIconBadgeNumber:-1]
看看它是否会导致您想要的面向用户的行为。
据我所知,将badge值设置为0是不可能的。应用程序的badge值只有在大于0时才会显示。否则(如果为0),它将被ios隐藏。
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:-1]
它不适合我。
但我试试这个没关系。
UILocalNotification *notification=[[UILocalNotification alloc]init];
notification.applicationIconBadgeNumber=-1;
[[UIApplication sharedApplication] presentLocalNotificationNow:notification];