OGeek|极客世界-中国程序员成长平台

标题: ios - 如何为多个屏幕的进程重用 View Controller ? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 19:11
标题: ios - 如何为多个屏幕的进程重用 View Controller ?

我正在开发一个聊天应用程序,它会提出一些问题以及用户可以在哪里回答。

每个问题都有自己的屏幕,用户回答问题后,会有一个按钮导航到下一个屏幕。

所有的屏幕几乎都一样。一个 UILabel 和输入字段。现在我想知道是否有办法重用这个 View ,所以我不必创建多个完全相同的 View Controller 。

这可能吗?我应该寻找什么?



Best Answer-推荐答案


您可以通过以下方式执行此操作:

  1. 在重用 View Controller 中创建变量:

    var question: String!
    
  2. 按钮 Action 需要执行segue:

    @IBAction func nextQuestionAction() {
        performSegue(withIdentifier: "NextQuestionSegue", sender: nil)
    }
    
  3. 在为转场做准备时,在过渡之前,您分配下一个问题:

    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/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4