在学习swift开发的路上,做个性格测试的app,结果有一个方法没见过,导致出错很久没发现错误原因。现在回头分析一下这个方法,供自己和他人参考学习。
func nextQuestion(){
questionIndex += 1
if questionIndex < questions.count {
updateUI()
} else {
performSegue(withIdentifier: "ResultsSegue", sender: nil)
}
}
这个方法和prepare方法不能分开说。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "ResultsSegue" {
let resultsViewController = segue.destination as! ResultsViewController
resultsViewController.responses = answerChosen
}
}
那么,这两个方法到底是做什么的呢?我们先看看它们的定义。
@available(iOS 5.0, *)
open func performSegue(withIdentifier identifier: Str