我正在开发一个聊天应用程序,它会提出一些问题以及用户可以在哪里回答。
每个问题都有自己的屏幕,用户回答问题后,会有一个按钮导航到下一个屏幕。
所有的屏幕几乎都一样。一个 UILabel 和输入字段。现在我想知道是否有办法重用这个 View ,所以我不必创建多个完全相同的 View Controller 。
这可能吗?我应该寻找什么?
Best Answer-推荐答案 strong>
您可以通过以下方式执行此操作:
在重用 View Controller 中创建变量:
var question: String!
按钮 Action 需要执行segue:
@IBAction func nextQuestionAction() {
performSegue(withIdentifier: "NextQuestionSegue", sender: nil)
}
在为转场做准备时,在过渡之前,您分配下一个问题:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
super.prepare(for: segue, sender: sender)
if segue.identifier == "NextQuestionSegue" {
guard let destinationVC = segue.destination as? ReuseViewController else { return }
destinationVC.question = "Question goes here"
}
}
这就是它的工作方式。
关于ios - 如何为多个屏幕的进程重用 View Controller ?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/47071027/
|