清除通知徽章而不删除通知

zdo*_*cha 6 objective-c push-notification ios

在我的应用程序中,我收到徽章编号设置为1的推送通知.当应用程序启动时,它应该将徽章数设置为0,所以我使用:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
Run Code Online (Sandbox Code Playgroud)

它可以工作,但它也会从通知中心删除所有通知.
有没有办法在不删除通知的情况下清除徽章?

zdo*_*cha 10

根据这个主题:

如何在保留通知中心的同时清除徽章编号

设置:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:-1];
Run Code Online (Sandbox Code Playgroud)

应该做的伎俩.


小智 7

使用iOS9直接将徽章设置为否定仍会清除通知.您必须使用负badgenumber触发空UILocalNotification才能实现此目的.

let ln = UILocalNotification()
ln.applicationIconBadgeNumber = -1
UIApplication.sharedApplication().presentLocalNotificationNow(ln)
Run Code Online (Sandbox Code Playgroud)