Objective C Nib文件是什么?

use*_*565 2 objective-c uikit ios

Nib文件是否会自动初始化某些属性?在我看过的大多数objective-c代码中,你初始化一个指针:

MyObject* obj = [MyObject alloc];
[MyObject doStuff];
[obj release];
Run Code Online (Sandbox Code Playgroud)

但是,对于某些对象(如ViewController子类),UIView对象在未初始化的情况下使用,并且不会被释放.UIKit会自动查找.xib文件并为您管理所有ViewController实例吗?

如果是这样,那就非常混乱了.所有这些实际上如何运作?如何在头文件中声明指针,然后在需要时神奇地找到它?

有帮助吗?

(只是一个抱怨Objective-c的c ++人)

Gra*_*rks 7

NIB是"冻结"对象,加上对象图.加载NIB时实例化对象.对象之间的所有链接都将恢复.还设置了"文件所有者"中的指针,即IBOutlets,因此NIB的所有者对刚刚加载的对象有引用.

编辑:您的Info.plist也可能是指在应用启动期间加载的"主"NIB.这通常包含主视图控制器和视图.