【问题标题】:Outlet from NIB not loaded until view is displayed在显示视图之前未加载来自 NIB 的插座
【发布时间】:2012-07-03 01:05:58
【问题描述】:

我的应用程序在 info.plist 中定义了一个主 nib。 这个 nib 包含一个 UIViewController 对象。在 IB 中,在属性检查器中,我为该控制器的视图指定了一个 NIB 名称。

我曾假设加载主 nib 会反过来加载视图控制器的 NIB,并且所有内容都会被填充。我认为这就是它一直在工作的方式。但是现在在 iOS5.1 中,视图控制器对象在应用程序加载后存在,但它的出口,在它自己的 NIB 中设置,并没有设置。

如果我通过从控制器获取视图并将其添加到窗口来显示该视图,那么会填充出口。但在那之前,它们都是零。

我做错了什么?这种行为有改变吗?

【问题讨论】:

    标签: ios uiviewcontroller interface-builder nib


    【解决方案1】:

    我相信你看到的都是正常的。通常,可以安全假设 outlet 已填充的第一个地方是视图控制器的 viewDidLoad:。这通常发生在控制器获得屏幕时(推,呈现......)。我习惯于通过显式引用控制器的视图来编写导致过早加载的代码,所以我认为这不是新的。

    【讨论】:

    • 您是如何造成过早负载的?只引用控制器的视图?
    • 是的,尽管我认为除了调试之外我没有出于任何原因这样做。我觉得这可能是一种脆弱的策略。
    猜你喜欢
    • 2011-12-13
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-23
    相关资源
    最近更新 更多