问题描述
我正在使用 MessageKit 为我的应用构建聊天视图。此聊天视图将支持图像消息。我目前遇到的问题是,如果最后一条消息是图片消息,则消息将无法正确显示:
我正在 viewDidLoad
中加载我的所有消息,然后在 MessagesCollectionView
中更新 viewWillAppear
:
override func viewWillAppear(_ animated: Bool) {
messagesCollectionView.reloadData()
messagesCollectionView.scrollToLastItem()
}
解决方法
问题似乎是这些更新没有在正确的线程上调用;将代码修改为以下解决了问题:
override func viewWillAppear(_ animated: Bool) {
DispatchQueue.main.async {
self.messagesCollectionView.reloadData()
self.messagesCollectionView.scrollToLastItem()
}
}