创建一个笔尖时,我有两种类型可以创建,一个是WindowNib或一个是ViewNib.我看到不同的是,窗口笔尖有一个窗口和一个视图.
如何将视图笔尖加载到另一个窗口?我是否必须创建一个WindowController并添加一个窗口然后在窗口中加载nib?
通常,您应该为每个NIB配备一个Controller.因此,对于Window NIB,您将拥有NSWindowController子类作为文件所有者.类似地,对于View NIB,您将拥有NSViewController子类作为File的所有者.在您呈现NSWindowController子类的情况下,将实例化NSViewController子类(向其传递适当的View NIB),然后将NSViewController的view属性附加到窗口的视图层次结构中.
在Window Controller的awakFromNib方法中,您将拥有以下示例:
- (void) awakeFromNib {
_viewController = [[MyViewController alloc] initWithNibName: @"MyView" bundle: nil];
[[[self window] contentView] addSubview: [_viewController view]];
}
Run Code Online (Sandbox Code Playgroud)
您也可以将此代码放在子类的windowDidLoad方法中NSWindowController.
| 归档时间: |
|
| 查看次数: |
1252 次 |
| 最近记录: |