【问题标题】:How does loadNibNamed?loadNibNamed 是怎么做的?
【发布时间】:2011-03-05 21:57:54
【问题描述】:

在大多数示例中,没有使用来自loadNibNamed 值的返回值,所以我猜它使用了所有者参数。但是它是如何工作并与所有者对象建立连接的呢?我的所有者类应该满足什么样的要求才能以这种方式加载笔尖?

我能猜到的唯一要求是

  1. 所有者类必须在 nib 文件中的一个或多个对象上定义一个出口
  2. nib 文件的所有者应该设置为加载 nib 的类,然后 loadNibNamed 中的所有者参数可以设置为 self
  3. nib 文件应将所有连接设置为所有者类中定义的插座

我的假设是否正确,或者在使用 loadNibNamed 时还有什么需要考虑的吗?

【问题讨论】:

    标签: iphone objective-c nib


    【解决方案1】:

    您对所需的内容有基本的了解,但您还应该考虑内存管理(iPhone 与 Mac 略有不同)。要真正了解此方法的原理,您应该阅读资源编程指南Nib Files 部分。它涵盖了用于建立连接的实际方法(这可能很重要),以及完成后各种对象将具有的保留计数。同样,这些在 Mac 和 iPhone 之间都略有不同。 iPhone 总体上改进了 nib 对象处理方式的一致性。

    为了更好地衡量,我始终建议人们阅读内存管理编程指南中的Memory Management of Nib Objects。无论您是否使用较低级别的方法,这都是批判性阅读。

    【讨论】:

    • 唉,上面的链接现在已经失效了。
    • @GrahamLeggett 更新了指向 Apple 新位置的第一个链接。第二份文件在 Apple 已不存在,我已链接到 Wayback。
    猜你喜欢
    • 2012-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 2010-09-11
    • 2011-07-05
    • 2013-06-19
    相关资源
    最近更新 更多