我正在使用 prepareForSegue
方法,
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
if segue.identifier == "roundSegue" {
var selectedRound:NSManagedObject = roundList[self.tableView.indexPathForSelectedRow().row] as NSManagedObject
let SVC: SetupVC = segue.destinationViewController as SetupVC
SVC.course = selectedRound.valueForKey("course") as String
SVC.existingRound = selectedRound
}
}
但是,它在“if segue.identifier == "roundSegue"”行上抛出一个错误“Thread 1:EXC_BAD_INSTRUCTION”……有没有想过为什么会抛出这个错误?
最佳答案
您的 segue 标识符可能为 nil。如果是这种情况,您正在尝试解包一个隐式解包的可选变量 nil,这会导致崩溃。试试这个:
if let identifier = segue.identifier {
if identifier == "roundSegue" {
// your code here.
}
}
关于iOS prepareforsegue 抛出 xc_bad,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24876665/