作者:几米身边的孩子们 | 来源:互联网 | 2022-12-07 16:57
我试图在我的iOS swift应用程序中为聊天功能实现MessageKit(JSQMessagesViewController的替换)。我遵循了raywenderlich教程。我使用Pods进行安装,并逐步遵循了本教程。我的消息正在显示。根据本教程,为了隐藏用户头像,我将viewController设置为messagesLayoutDelegate
和的委托messagesDisplayDelegate
。
//Inside view did load, i set the delegates, along with data source
messagesCollectionView.messagesDataSource = self
messagesCollectionView.messagesLayoutDelegate = self
messagesCollectionView.messagesDisplayDelegate = self
但是,MessagesLayoutDelegate
没有调用的委托函数。
我想隐藏用户头像,所以我在viewController中采用了协议
extension ChatLogVC_MessageKit: MessagesLayoutDelegate {
func avatarSize(for message: MessageType, at indexPath: IndexPath,
in messagesCollectionView: MessagesCollectionView) -> CGSize {
//return zero size for hiding avatar, but this function is not being called.
return .zero
}
func footerViewSize(for message: MessageType, at indexPath: IndexPath,
in messagesCollectionView: MessagesCollectionView) -> CGSize {
//also not being called
return CGSize(width: 0, height: 8)
}
}
我在这些函数中设置了断点,但断点从未命中。此外,的shouldDisplayHeader
功能MessagesDisplayDelegate
也没有被调用
任何帮助将非常感激
注意:我仅在模拟器上对其进行了测试。