【发布时间】:2019-05-26 10:33:39
【问题描述】:
总而言之,如何最好地管理 VC?
就我而言,我的游戏中有 3 个 VC。要在它们之间切换,当前 VC 中的一个按钮会激活以下代码:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = storyboard.instantiateViewController(withIdentifier:"firstLevel")
self.present(viewController, animated: false, completion: nil)
这段代码有效,但每次它实例化一个新的 VC 时,当有两个相同 VC 副本时,我的游戏中会出现全局变量问题,例如“Score”,我认为这对内存也非常不利。
这个问题的最佳解决方案是什么?
在我实例化下一个 VC 之后,是否应该通过放置以下代码行来关闭当前的 viewController?:
self.dismissViewControllerAnimated(false, completion: nil)
【问题讨论】:
-
快速提问:您的导航是什么样的?是下一个/上一个方案,还是底部的选项卡等?
-
第一个 VC 是主屏幕 - 所以它有继续游戏、新游戏等按钮,第二个 VC 是 1 级,您可以通过向上滑动返回第一个 VC。当我按下继续返回到第二个 VC 并且计时器开始以两倍的速度倒计时时,我注意到了一个问题(计时器值是一个全局函数,所以我假设第二个 VC 的两个实例导致了这种情况)
-
定时器应该在
viewDidDisappear中失效
标签: swift xcode uiviewcontroller viewcontroller