ios - 线程 1 : EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, 子代码=0x0) Swift

标签 ios swift

我正在尝试从一种 View 切换到另一种 View ,但收到此错误,但我不知道为什么会收到此错误。

我使用此功能转到下一个 Controller :

   func showChatControllerForGroup(_ user: [User], groupName: String) {

        let vc: GroupChatMessangingViewController = self.storyboard?.instantiateViewController(withIdentifier: "GroupChatMessangingViewController") as! GroupChatMessangingViewController
//it crashed above here

        vc.group?.members = user
        vc.group?.name = groupName
        self.navigationController?.pushViewController(vc, animated: true)

}

为了调用它,我在另一个 View 中调用它:

var group: Group? {
    didSet {
        navigationItem.title = group?.name
    }
}

var chosenUser: [User] = []
let user = self.chosenUser

  override func viewDidLoad() {
    super.viewDidLoad()

    navigationItem.rightBarButtonItem = UIBarButtonItem(title: "Create", style: .plain, target: self, action: #selector(createGroup))

    // Do any additional setup after loading the view.
}

 @objc func createGroup(){

    let transition = CATransition()
    transition.duration = 0.5
    transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
    transition.type = kCATransitionReveal
    transition.subtype = kCATransitionFromBottom
    navigationController?.view.layer.add(transition, forKey: nil)
    _ = navigationController?.popViewController(animated: true)
    let user = self.chosenUser
    self.nextVC.showChatControllerForGroup(user, groupName: groupNameTextField.text!) }

以防万一有人需要查看我的用户类:

class User {
var id: String?
var name: String?
var email: String?
var profileImageUrl: String?
var lastMessage: String?
var timestamp: String? //reason why this exist was because in mainmenu, we appended users, not msssage

init() {

}

init(dictionary: [String: AnyObject]) {
    self.id = dictionary["id"] as? String
    self.name = dictionary["name"] as? String
    self.email = dictionary["email"] as? String
    self.profileImageUrl = dictionary["profileImageUrl"] as? String
}

}

从我的小组类(class)来看:

class Group {
var id: String?
var name: String?
var members: [User]!
var groupImageUrl: String?
var lastMessage: String?
var timestamp: String?

init() {

}

init(dictionary: [String: AnyObject]) {
    self.id = dictionary["id"] as? String
    self.name = dictionary["name"] as? String
}}

有什么原因导致崩溃吗?

最佳答案

我猜你在

    let vc: GroupChatMessangingViewController = self.storyboard?.instantiateViewController(withIdentifier: "GroupChatMessangingViewController") as! GroupChatMessangingViewController

您调用了错误的 Storyboard。检查并看看您是否处于正确的 Storyboard中。

关于ios - 线程 1 : EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, 子代码=0x0) Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50638585/

相关文章:

ios - Booking.com 如何以编程方式关闭他们的应用程序?

iOS UIImage存储格式、内存使用和编码/解码

iphone - iOS 中的叠加菜单,如 Comcast Xfinity iPad 应用程序

ios - 如何根据 UIScrollview 内的按钮框架大小水平滚动 UIScrollView

ios - viewForHeaderInSection - 没有标题返回什么?

ios - ObservableObject 正在更新所有 View 并导致 SwiftUI 中的菜单关闭

swift - 使 NSTextField 接受返回并在不结束编辑的情况下输入

ios - 访问 NSDictionary 数组对象中的第二层数组

swift - 用于对象搜索的 CoreML

IOS 将反斜杠作为 url 参数的一部分传递给 Json Web 服务