Ios Messagekit导航栏未显示

Ios Messagekit导航栏未显示,ios,swift,firebase,messagekit,Ios,Swift,Firebase,Messagekit,如何显示默认或自定义导航栏?尝试了所有方法,但没有任何效果,它似乎没有在顶部,它是messagekit的messageViewcontroller,找不到导航栏的任何委托方法,如果有人教我这方面的话,那就太好了 我的代码 override func viewDidLoad() { messagesCollectionView = MessagesCollectionView(frame: .zero, collectionViewLayout: CustomMessagesFlo

如何显示默认或自定义导航栏?尝试了所有方法,但没有任何效果,它似乎没有在顶部,它是messagekit的messageViewcontroller,找不到导航栏的任何委托方法,如果有人教我这方面的话,那就太好了

我的代码

    override func viewDidLoad() {
    messagesCollectionView = MessagesCollectionView(frame: .zero, collectionViewLayout: CustomMessagesFlowLayout())
    messagesCollectionView.register(CustomCell.self)
    super.viewDidLoad()
    messagesCollectionView.messagesDataSource = self
    messagesCollectionView.messagesLayoutDelegate = self
    messagesCollectionView.messagesDisplayDelegate = self
    messagesCollectionView.messageCellDelegate = self
    messageInputBar.delegate = self
    configureMessageInputBar()
    configureInputBarItems()
    updateTitleView(title: "Hanzala", subtitle: "Online")
}


import UIKit
扩展UIViewController{

func updateTitleView(title: String, subtitle: String?, baseColor: UIColor = .white) {
    
    let titleLabel = UILabel(frame: CGRect(x: 0, y: -2, width: 0, height: 0))
    titleLabel.backgroundColor = UIColor.clear
    titleLabel.textColor = baseColor
    titleLabel.font = UIFont.systemFont(ofSize: 15)
    titleLabel.text = title
    titleLabel.textAlignment = .center
    titleLabel.adjustsFontSizeToFitWidth = true
    titleLabel.sizeToFit()
    
    let subtitleLabel = UILabel(frame: CGRect(x: 0, y: 18, width: 0, height: 0))
    subtitleLabel.textColor = baseColor.withAlphaComponent(0.95)
    subtitleLabel.font = UIFont.systemFont(ofSize: 12)
    subtitleLabel.text = subtitle
    subtitleLabel.textAlignment = .center
    subtitleLabel.adjustsFontSizeToFitWidth = true
    subtitleLabel.sizeToFit()
    
    let titleView = UIView(frame: CGRect(x: 0, y: 0, width: max(titleLabel.frame.size.width, subtitleLabel.frame.size.width), height: 30))
    titleView.addSubview(titleLabel)
    if subtitle != nil {
        titleView.addSubview(subtitleLabel)
    } else {
        titleLabel.frame = titleView.frame
    }
    let widthDiff = subtitleLabel.frame.size.width - titleLabel.frame.size.width
    if widthDiff < 0 {
        let newX = widthDiff / 2
        subtitleLabel.frame.origin.x = abs(newX)
    } else {
        let newX = widthDiff / 2
        titleLabel.frame.origin.x = newX
    }
    
    navigationItem.titleView = titleView
}

您必须将
MessageViewcontroller
嵌入
UINavigationController
并使用它

let navigationController = UINavigationController(rootViewController: MessageViewcontroller())
如果要将
MessageViewcontroller
推到的控制器已经有
navigationController
,则将
MessageViewcontroller
推到导航堆栈中,而不是显示

let messageViewcontroller = MessageViewcontroller()
navigationController?.pushViewController(messageViewcontroller, animated: true)

谢谢你的回复,我已经在推它了,在推之前检查一下导航栏是否可用?基本上我已经隐藏了默认的导航栏,想显示在第二张图片中可见的导航栏,它来自message kit官方演示应用程序,我已经从那里复制了代码,但是更新标题v不起作用查看功能是为导航栏,我必须把
let messageViewcontroller = MessageViewcontroller()
navigationController?.pushViewController(messageViewcontroller, animated: true)