我不知道如何把标题具体化,我会在这里解释我需要什么。
我的问题是:
这是一个天气应用程序,我允许用户改变城市,他们想检查天气。问题是我以编程方式创建了视图控制器。这意味着prepareForSegue重写函数不适用。
现在我找到了该怎么做的答案,而不是prepareForSegue(下面是代码),但是,我应该在哪里调用函数,因为它不是重写。
代码:

func prepareForSegue() {
     let changeCityVC = ChangeCityViewController()
     changeCityVC.delegate = self
     present(changeCityVC, animated: true, completion: nil)
}

谢谢,

最佳答案

你的prepareForSegue方法实际上并没有为segue做准备。它只是创建一个VC并呈现它。所以它应该被称为presentChangeCityVC或类似的东西。
至于在哪里调用这个方法,只要你想展示你的VC就调用它!假设你有一个按钮,上面写着“改变城市”。您可以在按钮的目标中调用方法:

 func changeCityButtonPressed() {
    presentChangeCityVC()
}

10-08 12:24