当我使用nib文件加载视图时,似乎会发生这种情况。我需要以编程方式为某些自定义视图设置数据源和委托。它们仅在我在viewDidLoad方法中设置时才起作用。在初始化程序,awakeFromNib等中设置它们都会失败。有谁知道这个的原因?
答案 0 :(得分:2)
从nib文件创建视图控制器时,首先初始化然后加载UIViewController。因此,当initWithNibName:bundle:
方法被调用self.view
时,从笔尖加载的任何其他视图将为nil
。也可能会卸载视图(请参阅viewDidUnload
)。这就是为什么任何与视图相关的初始化都需要在viewDidLoad
中发生。