exc_breakpoint(code = exc_i386_bpt subcode = 0x0)

时间:2015-04-14 14:43:33

标签: ios swift

出于某种原因,我的程序崩溃,为这两行代码显示此错误

行错误1)

@IBAction func doneTapped(sender: AnyObject)
{
  var randomNumber = Int(arc4random_uniform(2))
  if (randomNumber == 1) {
        self.performSegueWithIdentifier("segueLib1", sender: nil)
    }

  else{
        self.performSegueWithIdentifier("segueLib2", sender: nil)
    }
}

线路错误2)

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {

   var madLibs1 = segue.destinationViewController as MadLib1ViewController

   var madLibs2 = segue.destinationViewController as MadLib2ViewController

我的目标是在两个视图控制器MadLib1ViewController和MadLib2ViewController之间随机切换,因为按下了doneTapped。但是,每当按下按钮时,它会崩溃并显示:

exc_breakpoint (code=exc_i386_bpt subcode=0x0) 

我已经删除了代码中的所有物理蓝色断点。有人可以向我解释错误或如何解决它。谢谢!

3 个答案:

答案 0 :(得分:1)

您的performSegue应在第二个参数中发送self

如果不是这样,您应该知道断点可能是异常类型。也许你的下一个视图有一个约束异常,而你正在打破它。我会尝试“垃圾邮件”“跳过断点”按钮,看看是不是问题。

在此之前,您能突出显示崩溃的完全行吗? (只需在崩溃线旁边添加//This line causes crash)。

答案 1 :(得分:0)

对于1),你应该打电话给#34; performSegue"以自己为发送者,而非零。

self.performSegueWithIdentifier("segueLib1", sender: self)
self.performSegueWithIdentifier("segueLib2", sender: self)

第2点的代码应该是:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
  if (segue.identifier == 'segueLib1') {
    var madLibs1 = segue.destinationViewController as MadLib1ViewController
  else if (segue.identifier == 'segueLib2') {
    var madLibs2 = segue.destinationViewController as MadLib2ViewController
  }

  // Do something with your var
}

答案 2 :(得分:-1)

我在使用断点时会遇到这种情况,该断点会记录某些内容然后自动继续。禁用了,事情恢复正常。正如消息所暗示的那样,它是一个断点问题

尝试删除所有断点