JSQMessagesViewController用户添加图像

问题描述:

如何添加图像发送者​​和接收者用户JSQMessagesViewController用户添加图像

添加添加组日期

show this image

+0

欢迎来到Stack Overflow。请阅读如何发布一个好问题或查看其他一些问题的指导原则。询问时需要包含更多细节。 – GJZ

有几个peices你的问题。如果您可以提供您尝试过的任何方式,我们知道如何为您提供最好的帮助,这也会很有帮助。这样一个广泛的问题可以通过项目文档得到更全面的回答。另外一个很好的提示是检查项目的开发分支,因为它会有更新的swift示例。

所以对于化身,你会想确保你为化身定义一个尺寸。这应该在视图的init或viewDidLoad中调用。它应该沿着这些线看起来像

collectionView?.collectionViewLayout.incomingAvatarViewSize = CGSize(width: kJSQMessagesCollectionViewAvatarSizeDefault, height:kJSQMessagesCollectionViewAvatarSizeDefault) 

这些是库提供的默认值,你也可以把你想要的大小。 然后有一个你应该覆盖的委托方法。

override func collectionView(_ collectionView: JSQMessagesCollectionView!, avatarImageDataForItemAt indexPath: IndexPath!) -> JSQMessageAvatarImageDataSource! { 

这是您将在其中创建和管理将代表该特定消息的头像的图像。正如你所看到的,你需要返回一些与JSQMessagesAvatarImageDataSource相匹配的东西,它不能是nil,所以如果你没有该用户的图片,你将需要一个默认或BlankAvatar。

那么我会建议leaveraging的JSQAvatarImageFactory

JSQMessagesAvatarImageFactory.avatarImage(withUserInitials: "DL", backgroundColor: UIColor.blue, textColor: UIColor.white, font: UIFont.systemFont(ofSize: 14), diameter: UInt(kJSQMessagesCollectionViewAvatarSizeDefault)) 

请确保您更新取决于它是该消息的值。

我希望这可以帮助你让我知道,如果你有更多的问题,你可以提供更好的更多。