为什么每次我更改嵌入在 UINavigationController 中的 UIViewController 使用 show push in storyboard ViewDidLoad 被调用?
它不能只被调用一次,或者我必须以编程方式检查它是否已经加载?
另一个相关问题:
在 StackOverflow 中找到的以下最佳实践中,用户正在谈论 init 方法,但是如果我的 ViewController 由 Storyboard加载,我必须在其中初始化我的属性?
最佳实践
切记不要在 viewDidLoad 中进行 View Controller 初始化。这是一个常见的错误。对于只应在加载 View Controller 时发生一次的事情,请在 Controller 的 init 方法之一中执行。
最佳答案
viewDidLoad
在加载 viewController 的 View 时首次调用(通过访问 View Controller 的 View 或通过模态呈现或通过推送呈现呈现 View Controller )。加载 View Controller 后,将不会再次调用 viewDidLoad。如果你想使用 init 方法,你需要对来自 Storyboard的东西使用 initWithCoder
。
关于ios - 每次调用 ViewdidLoad,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34997726/