Swift 重新加载和通知后未更新表视图

Swift 重新加载和通知后未更新表视图,swift,uitableview,tableview,reloaddata,Swift,Uitableview,Tableview,Reloaddata,当用户离开群组聊天时,我使用NSNotifications调用RefreshChat。这将更新User.current.groups。我已经测试过,因此刷新聊天应该观察除用户刚刚离开的组之外的所有组。对消息进行排序后会调用Tableview.reloadData,但我仍然可以在表视图中看到我刚才留下的群组聊天。我必须在终止后重新打开应用程序才能看到更改 @objc func refreshChats(notification: NSNotification) { messages.rem

当用户离开群组聊天时,我使用NSNotifications调用RefreshChat。这将更新User.current.groups。我已经测试过,因此刷新聊天应该观察除用户刚刚离开的组之外的所有组。对消息进行排序后会调用Tableview.reloadData,但我仍然可以在表视图中看到我刚才留下的群组聊天。我必须在终止后重新打开应用程序才能看到更改

@objc func refreshChats(notification: NSNotification) {
    messages.removeAll()
    messagesDictionary.removeAll()
    for group in User.current.groups {
        observeGroupMessages(group: group)
    }
    observeUserMessages()
}

你在主线程中调用reloadData吗?没有。我只在观察所有消息后才调用它。我应该在主线程中处理这个案例吗?是的,在主线程中调用它对我不起作用。我还注意到,如果我在离开第一次群聊之后离开第二次群聊,那么表视图将不会正确显示第一次群聊,而是第二次群聊。