斯威夫特 - 联合国通讯中心

时间:2017-09-18 10:57:13

标签: ios swift notifications unusernotificationcenter

我有多个控制器:

  • Home VC
  • MyNotifVC

myNotifVC中,我列出了所有待处理的通知。

我正在尝试在通知发送时更新HomeVC中的通知数量。

所以基本上我想在通知发送后立即更新var deliveredNotif: Int中的var(HomeVC)(独立于哪个控制器处于活动状态)。

到目前为止myNotifVC我有:

     func getDeliveredNotif(){
    UNUserNotificationCenter.current().getDeliveredNotifications(completionHandler: {deliveredNotifications -> () in
        if let notifVC = self.presentingViewController as? HomeVC {
            notifVC.delivered = deliveredNotifications.count
        }
    })
}

如果HomeVC正在运行或运行时,我如何在已发送的var(在我的HomeVC中声明)中存储已发送通知的数量?

谢谢!

1 个答案:

答案 0 :(得分:0)

这样做 -

  1. 在HomeVC中添加观察者以获取通知" NewNotificationRecieved" (还要确保以deinit方法删除它)
  2. 发送通知" NewNotificationRecieved"每当有新通知到达时,MyNotifVC中的用户信息中的已发送通知计数
  3. 每当在MyNotifVC中收到新通知时,它将被广播给所有观察视图控制器,因此他们可以更新UI。