gpt4 book ai didi

objective-c - 为什么某些 UIViewController 属性在未使用 viewDidLoad 设置时变为 nil?

转载 作者:搜寻专家 更新时间:2023-10-30 20:20:35 26 4
gpt4 key购买 nike

这似乎是在我使用 nib 文件加载 View 时发生的。我需要以编程方式为某些自定义 View 设置数据源和委托(delegate)。只有当我在 viewDidLoad 方法中设置它们时它们才起作用。在 initializer 、 awakeFromNib 等中设置它们都失败了。有谁知道这是什么原因?

最佳答案

当您从 nib 文件创建 View Controller 时,UIViewController 首先被初始化,然后被加载。因此,当调用 initWithNibName:bundle: 方法时,self.view 并且从 nib 加载的任何其他 View 都将为 nil。也可能发生 View 被卸载的情况(参见 viewDidUnload)。这就是为什么任何与 View 相关的初始化都需要在 viewDidLoad 中进行的原因。

关于objective-c - 为什么某些 UIViewController 属性在未使用 viewDidLoad 设置时变为 nil?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12594620/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com