我在 xib 中使用 IB 创建了一个视图,加载了该视图,当我尝试自定义容器(图像、标签、按钮等)时,一些容器是自定义的,而有些则不是。就像我在图像视图上设置图像一样,另一方面,自定义按钮/标签会失败。我正在方法中进行所有这些自定义awakeFromNib
,此方法保留在使用 xib 创建的视图中。
我试图调试看看幕后发生了什么。每当创建来自 xib 的视图实例时,都会awakeFromNib
调用下面的屏幕截图,图片的其余部分很好地呈现
如屏幕截图所示,我的代码被 awakeFromNib 方法中的断点暂停,调试器显示视图是在内存中创建的,它的子视图图像也被创建,但标签和按钮为 nil,还使用 lldb 查看调试器中显示的内容是正确的。
现在我无法理解使用XIB
创建一些容器/一些不在awakeFromNib
方法中创建视图的这种行为,文档还说使用IBOutlets
内部awakeFromNib
进行任何自定义,因为时间awakeFromNib
被称为视图已完全创建。但我想并非如此。
非常感谢解码/逆向工程调试的上述行为或使用 nib 创建视图时发生的任何帮助。
提前谢谢了。