gpt4 book ai didi

Cocoa 加载 ViewNib

转载 作者:行者123 更新时间:2023-12-03 16:53:24 29 4
gpt4 key购买 nike

创建 Nib 时,我需要创建两种类型:WindowNib 或 ViewNib。我看到的区别是,窗口 Nib 有一个窗口和一个 View 。

如何将 View Nib 加载到另一个窗口中?我是否必须创建一个 WindowController 并添加一个窗口,然后在窗口中加载 Nib ?

最佳答案

通常,每个 NIB 都应该有一个 Controller 。因此,对于 Window NIB,您将有一个 NSWindowController 子类作为文件的所有者。类似地,对于 View NIB,您将有一个 NSViewController 子类作为文件的所有者。在您提供 NSWindowController 子类的情况下,将实例化 NSViewController 子类(将其传递给适当的 View NIB),然后将 NSViewController 的 view 属性附加到窗口的 View 层次结构。

在窗口 Controller 的 awakFromNib 方法中,您将具有以下示例:

- (void) awakeFromNib {
_viewController = [[MyViewController alloc] initWithNibName: @"MyView" bundle: nil];
[[[self window] contentView] addSubview: [_viewController view]];
}

您还可以将此代码放置在 NSWindowController 子类的 windowDidLoad 方法中。

关于Cocoa 加载 ViewNib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1732597/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com