application.applicationIconBadgeNumber = -1
在applicationDIDBecomeActive或applicationWillEnterForeground上,我可以清除徽章编号,而无需从通知中心删除通知.当我将application.applicationIconBadgeNumber设置为负数(如-1)时,它会清除通知中心的所有通知.是否有其他方法可以在不删除通知的情况下清除徽章编号?
解决方法 使用空的本地通知间接将应用程序徽章设置为-1,但是在清除应用程序徽章计数时,它会在托盘中保留通知.if(badgeCount == 0) { //set application badge indirectly with UIlocalnotification UIlocalnotification *ln = [[UIlocalnotification alloc]init]; ln.applicationIconBadgeNumber = -1; [[UIApplication sharedApplication] presentlocalnotificationNow:ln];}else { [[UIApplication sharedApplication] setApplicationIconBadgeNumber:badgeCount];}
Swift版本
if badgeCount == 0 { //set application badge indirectly with UIlocalnotification var ln = UIlocalnotification() ln.applicationIconBadgeNumber = -1 UIApplication.sharedApplication().presentlocalnotificationNow(ln)}else { UIApplication.sharedApplication().applicationIconBadgeNumber = badgeCount}
在iOS 9和10上测试的方法.
总结以上是内存溢出为你收集整理的ios – 清除applicationIconBadgeNumber而不删除无效的通知全部内容,希望文章能够帮你解决ios – 清除applicationIconBadgeNumber而不删除无效的通知所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)