Swift JSQMessagesviewcontroller可以';不表演分段
因此,我根据本教程使用JSQMessagesViewController创建了一个聊天视图控制器:我的代码大致相同,我没有对其中的任何重要内容进行调整,本教程仅针对单个视图控制器,因此我为应用程序添加了另一个视图控制器,但每次执行segues时,我都会收到错误信号SIGABRT,无论我是用performsgue还是用导航栏上的back按钮,它都会不断发出信号SIGABRT。任何帮助都将不胜感激 这是我的viewdidload:Swift JSQMessagesviewcontroller可以';不表演分段,swift,jsqmessagesviewcontroller,Swift,Jsqmessagesviewcontroller,因此,我根据本教程使用JSQMessagesViewController创建了一个聊天视图控制器:我的代码大致相同,我没有对其中的任何重要内容进行调整,本教程仅针对单个视图控制器,因此我为应用程序添加了另一个视图控制器,但每次执行segues时,我都会收到错误信号SIGABRT,无论我是用performsgue还是用导航栏上的back按钮,它都会不断发出信号SIGABRT。任何帮助都将不胜感激 这是我的viewdidload: override func viewDidLoad() {
override func viewDidLoad() {
super.viewDidLoad()
senderId = "1111"
senderDisplayName = "Bob"
title = "Steve"
inputToolbar.contentView.leftBarButtonItem = nil
collectionView.collectionViewLayout.incomingAvatarViewSize = CGSize.zero
collectionView.collectionViewLayout.outgoingAvatarViewSize = CGSize.zero
let query = Constants.refs.databaseChats.queryLimited(toLast: 10)
_ = query.observe(.childAdded, with: { [weak self] snapshot in
if let data = snapshot.value as? [String: String],
let id = data["sender_id"],
let name = data["name"],
let text = data["text"],
!text.isEmpty
{
if let message = JSQMessage(senderId: id, displayName: name, text: text)
{
self?.messages.append(message)
self?.finishReceivingMessage()
}
}
})
// Do any additional setup after loading the view.
}
SIGABRT(信号中止)通常来自故事板中的引用错误。您是否曾经更改过类的名称,或者将一个视图控制器的按钮连接到另一个视图控制器,然后将其删除?如果更改了类的名称,则必须确保类代码中的名称与该名称匹配。如果删除了视图控制器之间的按钮连接,请单击控制器本身,然后在“连接”选项卡下必须删除它。JSQMessagesViewController不推荐使用。“我收到错误信号,”:控制台中的任何错误消息,可能提供有关其崩溃原因和如何修复的重要线索?无法同时满足约束。可能下面列表中至少有一个约束是您不想要的。试着这样做:(1)看看每个约束,试着找出你不期望的约束;(2)找到添加了不需要的约束的代码并修复它。控制台中有这个错误消息。是的,我在开始时也认为是这样,但事实并非如此,因为我使用了导航控制器,即使我只按下后退按钮,也会出现sigabrt错误