我有2个控制器[TableViewController,SecondViewController]。在我的TableViewController上我有徽章,我从SecondViewController更新它们,但是当我从SecondVC更新我的徽章计数时它不会在TableVC上刷新,为此我需要更改我的屏幕或拉起我的控制器,然后它刷新我的徽章视图。
当我更新徽章计数时,我在SecondVC中尝试了这个:
badgeCount++
TableViewController().tableView.reloadData()
另外,这个:
badgeCounter++
dispatch_async(dispatch_get_main_queue(), { () -> Void in
TableViewController().tableView.reloadData()
})
但在这两种情况下都不会更新我的徽章视图。为此我需要更换控制器/屏幕或拉起我的TableVC。
我该如何解决这个问题?
还有一件有趣的事情,当我设置计时器时,每秒都会更新我的TableVC,在这种情况下我的徽章计数器视图更新得很好= /
答案 0 :(得分:0)
您可以使用notifications,第二个视图控制器将通知表视图控制器更改包。当您收到第二个视图控制器的通知表单时,您可以重新加载它。您还可以使用userInfo在通知中传递数据。
或者使用表视图控制器为第二个视图控制器的delegate的委托来执行此操作。