viewDidLoad被调用两次

sam*_*n01 3 uiviewcontroller uikit viewdidload ios viewcontroller-lifecyle

viewDidLoad在视图控制器中被调用两次.一旦通过[UIViewController View],并通过第二次[UINib instanciateWithOwner:Options].为什么会这样?可以预防吗?

谢谢

Joe*_*Joe 7

您放入的任何代码都viewDidLoad应该能够多次运行而不会出现任何问题.如果您的代码只需要运行一次以供控制器使用-awakeFromNib.原因是视图控制器的视图可以多次卸载和加载.里面的代码viewDidLoad应该只修改UI以反映当前状态.

现在我已经解决了这个问题,你的特定问题看起来像是一个错误.见内德的回答.


Ned*_*Ned 5

这是同样的问题吗?

为什么在设置UIWindow的rootViewController属性时,viewDidLoad被调用了两次?

看起来它可能是XCode 4中的一个错误.