我的应用程序是基于选项卡的导航。我正在使用 Xcode9 和 iOS11。为了支持横向/纵向兼容性,我在所有 View Controller 中使用以下方法。
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
super.viewWillTransitionToSize(size, withTransitionCoordinator: coordinator)
}
但是当我在第一个 View Controller 中旋转应用程序时,会自动调用所有其他 View Controller 中的 viewWillTransition 方法。如何解决这个问题?
最佳答案
它正在调用 viewWillTransition
方法,因为当时所有选项卡 View Controller 都在内存中。
您可以添加对当前 View Controller 的检查,并仅当它是正确的 View Controller 时才更新它。
在调用 viewWillAppear
方法时将 bool 值设置为 true,在调用 viewWillDisappear
方法时将 bool 值设置为 false。
关于ios - 为什么旋转应用程序时会在所有 View Controller 中调用 viewWillTransition 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49045817/