我正在使用JSQMessages
构建一个小型聊天应用,并尝试从照片库或相机发送图像。
我到了保存图像以解析后端但我无法在屏幕上显示的点。我找到了一些解决方案,但他们在obj-C中,我试图快速但它失败了。
我在解析"图像"中有额外的列在"消息"旁边。
以下是我的尝试:
var message = messages[indexPath.row]
if message != "" {
return messages[indexPath.row]
} else if message?.isMediaMessage == true {
let mediaItem:JSQMessageMediaData = message!.media
if (mediaItem.isKindOfClass(JSQPhotoMediaItem)) {
var photoItem: JSQPhotoMediaItem = mediaItem as! JSQPhotoMediaItem
var image: UIImage = photoItem.image
print("yay")
}
}
return messages[indexPath.row]
答案 0 :(得分:0)
您实际上并未将消息内容设置为您在后端保存的照片。您有var image: UIImage = photoItem.image
只将其保存到变量而不是显示的消息内容。这也会评估if (mediaItem.isKindOfClass(JSQPhotoMediaItem)) {
var photoItem: JSQPhotoMediaItem = mediaItem as! JSQPhotoMediaItem
所以如果设置你的message.media =(来自解析的数据),它应该显示出来。