如何在swift 3中为我的自定义消息创建符合JSQMessageData的类?

时间:2017-04-18 06:15:52

标签: jsqmessagesviewcontroller

我不熟悉Objective-C所以我无法理解这一点。 我的消息结构与JSQMessage不同,所以我想创建自己的类。

这是我的班级

class ChatMessage:NSObject {

var createdAt:Double?
var createdName:String?
var createdUid:String?
var imageUrl:String?
var name:String?
var text:String?
var uColor:String?
var uid:String?

}

1 个答案:

答案 0 :(得分:0)

如果您在Swift中实现此功能,并且希望在该框架中使其可用,则应使您的类符合JQMessageData。您只需要实现所需的方法和变量。

class ChatMessages: NSObject, JSQMessageData {

    // MARK: Required methods
    func senderId() -> String! {
        // your code here, return a unique ID for your sender
    }

    func senderDisplayName() -> String! {
        // your code here, return the display name of your sender
    }

    func date() -> Date! {
        // your code here, return your message date
    }

    func isMediaMessage() -> Bool {
        // your code here, return whether your message contains media
    }

    func messageHash() -> UInt {
        // your code here, return a unique identifier for your message
    }

    // MARK: Optional methods

    func text() -> String! {
        // your code here, return your message text
    }

    func media() -> JSQMessageMediaData! {
        // your code here, return your message media if required
    }

    // MARK: Other methods and variables
    // ...

}

检查documentation在这些方法中返回的内容。