为什么每次我在故事板中使用show push更改嵌入UINavigationController的UIViewController时会调用ViewDidLoad?
它不能只被调用一次,或者我必须以编程方式检查它是否已经加载?
另一个相对问题:
在StackOverflow中的以下最佳实践中,用户正在讨论init方法,但是如果我的ViewController是由storyboard加载的,我必须初始化我的属性?
最佳做法
请记住,不要在viewDidLoad中查看控制器初始化。这是一个常见的错误。对于应该只在加载视图控制器时发生一次的东西,在控制器的一个init方法中执行它。
答案 0 :(得分:0)
viewDidLoad
(通过访问视图控制器的视图或通过模式演示或通过推送演示呈现视图控制器)。加载视图控制器后,将不再再次调用viewDidLoad。如果要使用init方法,则需要使用initWithCoder
来处理来自故事板的内容。