委托和数据源在 MessageKit Swift IOS 中不起作用
Posted
技术标签:
【中文标题】委托和数据源在 MessageKit Swift IOS 中不起作用【英文标题】:Delegate and DataSource not woking in MessageKit Swift IOS 【发布时间】:2021-08-16 21:08:51 【问题描述】:当我调用 MessageKit 的委托和数据源时,我正在使用 MessageKit 进行聊天(在范围内找不到“messagesCollectionView”),请查看代码并指导我,谢谢。
import UIKit
import FirebaseAuth
import MessageKit
struct Message: MessageType
var sender: SenderType
var messageId: String
var sentDate: Date
var kind: MessageKind
struct sender: SenderType
var photo: String
var senderId: String
var displayName: String
class ChatDashboard: UIViewController
@IBOutlet weak var lblUser: UILabel!
var userActive: String? = nil
override func viewDidLoad()
super.viewDidLoad()
messagesCollectionView.messagesDataSource = self
messagesCollectionView.messagesLayoutDelegate = self
messagesCollectionView.messagesDisplayDelegate = self //not working delegate and datasource
if let userData = userActive
self.lblUser.text = userData
override func viewDidAppear(_ animated: Bool)
【问题讨论】:
没错。您的视图控制器中没有名为messagesCollectionView
的属性
是的,你是对的
你能告诉我吗?如何正确获取此属性我已经看到直接访问该属性而没有任何警告的教程
好吧,在他们的quick start guide 中,他们是MessagesViewController
的子类,而不是UIViewController
,所以这可能是一个开始。
【参考方案1】:
看看他们的示例项目用法。 应该可以消除很多困惑。
链接:https://github.com/MessageKit/MessageKit/tree/master/Example
至于您的疑问,
找不到messagesCollectionView
,因为MessagesViewController
需要扩展才能访问它。
【讨论】:
以上是关于委托和数据源在 MessageKit Swift IOS 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
我可以使用 messageKIt 在 swift 5 ios 中创建像这样的自定义单元格吗?
MessageKit InputBar 在 ViewController 关闭时被隐藏/删除