gpt4 book ai didi

ios - MessageKit MessageInputBarDelegate 未触发

转载 作者:行者123 更新时间:2023-11-28 13:30:14 27 4
gpt4 key购买 nike

我正在尝试在我的应用程序中使用 MessageKit,并且我有 View 加载和显示消息。

但是,“发送”按钮永远不会触发 messageInputBar 委托(delegate),我不确定为什么。没有太多连接,如果我降级到 1.0.0 版,当你按下发送时它会工作并触发,升级到最新版本并且它会中断。

import UIKit
import MessageKit
import InputBarAccessoryView

private var messages: [Message] = []

class InboxThreadViewController: MessagesViewController, MessageInputBarDelegate {

@objc public var myValue:String?
private var messages: [Message] = []
override func viewDidLoad() {
super.viewDidLoad()


messageInputBar.delegate = self
messagesCollectionView.messagesDataSource = self
messagesCollectionView.messagesLayoutDelegate = self
messagesCollectionView.messagesDisplayDelegate = self
title = "MessageKit"

func messageInputBar(_ inputBar: MessageInputBar, didPressSendButtonWith text: String) {
print("Message : \(text)")
NSLog("HELLO")
}
}

最佳答案

要解决此问题,您必须扩展 InputBarAccessoryViewDelegate 协议(protocol)而不是 MessageInputBarDelegate。为了使您的代码更优雅,请按以下方式进行:

class InboxThreadViewController: MessagesViewController { .. }

extension InboxThreadViewController: InputBarAccessoryViewDelegate {
func inputBar(_ inputBar: InputBarAccessoryView, didPressSendButtonWith text: String) {
//Handle message input text here
}
}

关于ios - MessageKit MessageInputBarDelegate 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57499884/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com