出于某种原因,我的程序崩溃,为这两行代码显示此错误
行错误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)
我已经删除了代码中的所有物理蓝色断点。有人可以向我解释错误或如何解决它。谢谢!
答案 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)
我在使用断点时会遇到这种情况,该断点会记录某些内容然后自动继续。禁用了,事情恢复正常。正如消息所暗示的那样,它是一个断点问题
尝试删除所有断点