取消本地通知时删除徽章编号

Posted

技术标签:

【中文标题】取消本地通知时删除徽章编号【英文标题】:Removing the badge number when local notification is canceled 【发布时间】:2011-08-20 05:56:15 【问题描述】:

我正在开发一个提醒应用程序。我正在使用本地通知。它工作正常。但是徽章编号总是显示在我的应用程序图标的顶部。触发本地通知后如何删除徽章编号?当我将[UIApplication sharedApplication].applicationIconBadgeNumber = 0; 放入does 启动时,徽章编号被完全删除。

【问题讨论】:

【参考方案1】:

我猜你正试图从徽章图标中删除 badgeNumber 并只显示一个空的(没有任何数字)徽章图标。 您不能只从徽章图标中删除徽章编号。如果将applicationIconBadgeNumber 设置为0,则徽章图标本身将从应用程序图标中删除。

如果要显示徽章,则应该有一个数字,而不是00 用于移除徽章图标。

【讨论】:

【参考方案2】:

每当应用程序中触发的通知委托 didReceiveLocalNotification 方法触发时 添加新通知时,您可以将计数减一并加一。

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification 

    [UIApplication sharedApplication].applicationIconBadgeNumber=application.applicationIconBadgeNumber-1;

干杯

【讨论】:

【参考方案3】:

我尝试了同样的事情,我发现了这个:

当应用程序在后台并且您尝试将 LocalNotification 设置为 0 时,它不会删除 IconBadgeNumber。您需要将 IconBadgeNumber 设置为 -1。

    UILocalNotification *localSilentNotif;
    localSilentNotif.applicationIconBadgeNumber = -1;

【讨论】:

以上是关于取消本地通知时删除徽章编号的主要内容,如果未能解决你的问题,请参考以下文章

ios - 应用程序关闭时本地通知不更新徽章编号

Swift 本地通知图标徽章编号不递增

本地通知徽章编号不超过一个

如何增加应用程序徽章编号以进行定期本地通知(iPhone)

IOS10本地通知使用UNUserNotification时如何设置徽章

swift 本地通知弹出,没有徽章