【问题标题】:Objective c how to keep other notifications on the notification tray after taping one notification目标c如何在点击一个通知后将其他通知保留在通知托盘上
【发布时间】:2016-01-04 10:28:18
【问题描述】:

对于我的 iOS 应用程序, 我已收到本地通知,它工作正常。

当应用程序处于后台时,这些通知会转到通知托盘,一直留在那里直到我看到这些通知。

但是这里我有如下问题,

在早上 6 点,我收到了 5 个本地通知,所有这 5 个都停留在通知托盘下...但是 当我点击这 5 个通知中的任何一个时,通知托盘下的所有其他 4 个通知(我的项目的通知)也被清除了。

我不知道它的作用...

我需要做什么才能将其他通知仅保留在托盘中?

我的代码在

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

  NotificationAlertView * localNotificationAlert = [[NotificationAlertView alloc] initWithTitle:APP_TITLE message:notification.alertBody delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
        localNotificationAlert.notifcation = notification ;
    localNotificationAlert.tag =ALERT_SURVEY_NOTIFICATION_TAG;
    [localNotificationAlert show];
    application.applicationIconBadgeNumber = 0;


    // Set icon badge number to zero
    application.applicationIconBadgeNumber = 0;
    notification.applicationIconBadgeNumber  =   0;
}

【问题讨论】:

  • 将徽章设置为零会清除通知。这是一个可怕的副作用,但自从 Apple 添加推送通知以来,情况就一直如此。现在不太可能改变。

标签: ios objective-c push-notification uilocalnotification


【解决方案1】:
application.applicationIconBadgeNumber = 0;

有副作用。你应该正确设置它。

【讨论】:

    【解决方案2】:

    在通知托盘中,如果您点击任何通知,同一应用程序的其他通知将自动从托盘中清除。 这是 iOS 的默认行为,您无法更改。

    【讨论】:

      猜你喜欢
      • 2016-05-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多