sigabrt错误在swift中以编程方式调用segue

我是iOS开发新手,目前正在尝试在UITableViewController的单元格被选中后以编程方式调用segue。 尽pipe我已经在storyboard中创build了segue并为其指定了一个标识符,但仍然在重写的didSelectRowAtIndexPath方法中的performSegueWithIdentifier方法调用中收到sigabrt错误。 任何帮助将不胜感激。

 override func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) { self.performSegueWithIdentifier("toExerciseInfo", sender: self) } 

我意识到这是一个旧的post,但它显示在谷歌search的顶部,我能够通过阅读评论来解决我的问题。 只是为了付出代价

这是从故事板连接到视图控制器时发生的问题。 在我的情况下,我把一个button连接到sockets,然后删除sockets,留下一个悬挂的连接。 我可以很容易地通过ctrl +单击故事板中的视图来修复它,直观地检查列出的连接,然后删除不再有效的连接。 我相信还有其他的方法来解决这个错误,但是这对我来说是有效的。

这可能有一天会帮助别人。

确保在主线程中调用segue,否则会崩溃(SIGABRT):

 dispatch_async(dispatch_get_main_queue(), ^{ [self performSegueWithIdentifier:@"customplayer" sender:self]; });