问题描述
我正在使用messageKit为我的iOS应用程序创建实时消息传递部分。我遇到头像圈子无法正确加载的问题。有时它们偶尔会加载,有时它们根本不加载,有时它们甚至不加载,然后它们会随机出现...所以我不确定该怎么做以确保它们始终加载。这是它们只是偶尔加载的示例:
理想情况下,我希望它的加载方式像本机消息传递iOS应用程序的工作方式一样,即在为用户输入文本块末尾的头像时进行加载。如果有人可以建议如何解决这个问题,我不确定该怎么做,因为该行为完全不一致。
用于加载图像的功能:
//This function shows the avatar
func configureAvatarView(_ avatarView: AvatarView,for message: MessageType,at indexPath: IndexPath,in messagesCollectionView: MessagesCollectionView) {
//If it's current user show current user photo.
if message.sender.senderId == self.docId {
avatarView.loadImageUsingCacheWithUrlString(urlString:self.matchImageURLs[0])
} else {
avatarView.isHidden = true
}
}
***注意,我知道loadImageUsingCacheWithUrlString在整个应用程序中都可以正常使用。 我还注意到,有时在我发送邮件时,某些邮件的图片可能会随机消失,因此基本上只是更加不可预测的行为。
解决方法
所有问题是,由于当一个单元格设置为false时,这些单元格可以重复使用,因此会影响其余的单元格,所以我要做的就是添加
avatarView.isHidden = false
if语句正下方并对其进行了修复。