ios - 如何在 JSQMessagesViewController Swift 4 中添加用户图像

标签 ios iphone swift swift4 jsqmessagesviewcontroller

我正在为我的聊天应用程序使用JSQMessageViewController。尝试了很多设置传入和传出消息的用户图像。如果有人使用这个库,请帮我设置用户图像。

提前致谢。

最佳答案

您可以在“JSQMessagesViewController”上拥有“JSQMessagesAvatarImage”类型的变量,一个用于发送者,一个用于接收者。在呈现“JSQMessagesViewController”之前,您可以使用 JSQAvatarImageFactory 初始化方法将图像分配给变量,该方法采用 UIImage 和 size ,如下所示:

chatVc.senderImg = [JSQMessagesAvatarImageFactory avatarImageWithImage:senderImage diameter:80] 
chatVc.receiverImg = [JSQMessagesAvatarImageFactory avatarImageWithImage:receiverImage diameter:80]

比在数据源方法“avatarImageDataForItemAtIndexPath”中的“JSQMessagesViewController”中,您可以像这样返回发送者或接收者头像:

- (id<JSQMessageAvatarImageDataSource>)collectionView:(JSQMessagesCollectionView *)collectionView avatarImageDataForItemAtIndexPath:(NSIndexPath *)indexPath{

JSQMessage *message = [self.messages objectAtIndex:indexPath.item];

if ([message.senderId isEqualToString:self.senderId])
    return _senderImg;
else
    return _receiverImg;}

此代码是 Objective-C 中的,我没有 swift 中的代码,但我相信你可以轻松地将其转换为 swift 。

关于ios - 如何在 JSQMessagesViewController Swift 4 中添加用户图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51665557/

相关文章:

iphone - NSMutableArray lastObject 在 UITableView iPhone 中不起作用?

swift - 按下时隐藏底栏 - Iphone X 上的动画卡住

c# - 使用 WCF 服务开发 iOS 应用程序

ios - Swift 4 - 添加到 UINavigationBar 时无法控制 UIButton 大小

ios - YTPlayer View在iPhone中无法正常工作

iphone - 支持所有移动平台和 .net Web 应用程序的聊天功能框架

ios - swift 3 : prepare(for:sender:)

ios - 从原始像素创建图像,但颜色无法根据 RGBA 十六进制值显示

ios - 最新的 ReactiveCocoa Carthage 错误 : No such module 'Result'

ios - AES 加密算法无法解密少数文档格式