loadNibNamed是如何工作的?

5
在大多数示例中,没有使用从loadNibNamed返回的值,因此我猜测它使用了owner参数。但是它是如何工作并连接到owner对象的呢?我的owner类需要满足什么样的要求才能以这种方式加载nib文件?
我唯一能猜测到的要求是:
  1. owner类必须已在nib文件中定义了一个或多个对象的outlet
  2. nib文件的owner应该设置为加载nib的类,然后可以将loadNibNamed中的owner参数设置为self
  3. nib文件应该将所有连接设置为owner类中定义的outlet
我的假设是否正确?在使用loadNibNamed时是否还需要考虑其他事项?
1个回答

5
您已经了解所需的基本知识,但您还应该考虑内存管理(iPhone与Mac略有不同)。要真正理解此方法的作用,您应阅读“资源编程指南”的Nib Files一节。它涵盖了用于建立连接的实际方法(这可能很重要),以及完成后各个对象将具有的保留计数。同样,这些在Mac和iPhone之间略有不同。iPhone通常改进了处理nib对象的一致性。
为了确保安全,我总是建议人们从“内存管理编程指南”中阅读“Nib对象的内存管理”。无论您是否使用更低级别的方法,这都是至关重要的阅读材料。

哎呀,上面的链接现在已经失效了。 - Graham Leggett
@GrahamLeggett 更新了指向苹果新位置的第一个链接。第二个文档在苹果上已不存在,我已经链接到 Wayback。 - Rob Napier

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接