如果我从另一个NIB加载视图,如何设置文件的所有者视图属性? IB不允许我将它连接到正在加载外部NIB的View Controller。
我的NIB看起来像这样:
File's Owner - Identity is set to LBRootViewController
First Responder
LBTableViewController - Identity is set to LBTableViewController, NIB Name is LBTableViewController
答案 0 :(得分:2)
您无法将文件所有者设置为另一个笔尖中定义的视图控制器,因为您无法跨笔尖设置插座。每个视图控制器必须是其自己的笔尖的文件所有者。
没有nib应该有两个一次处于活动状态的控制器。导航中具有根控制器的设置实际上没有两个控制器,而是使根控制器在运行时加载第二个控制器nib。
看起来你应该有两个笔尖:LBRootViewController.xib
和LBTableViewController.xib
。每个nib的文件所有者是nib所命名的类的实例。您可以在LBRootViewController类中创建一个指向LBTableViewController实例的插座。加载LBRootViewController.xib
时,在访问作为插座的属性之前,不会触发LBTableViewController.xib
的加载。
答案 1 :(得分:1)
选择文件所有者代理(在NIB窗口中)并切换到检查器选项板中的标识选项卡(带有circle-i图标的最右侧选项卡)。将Class字段设置为NSViewController
(或者任何视图控制器子类,如果有的话)。你现在应该可以拖动你的插座!