gpt4 book ai didi

macos - Cocoa - 如何以编程方式初始化 View ?

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

我在理解如何初始化 View 而不将其连接到我的 nib 文件中时遇到问题。所以我想要做的是,我不想拖入 View 并为其分配专用类,而是想以编程方式将其添加到应用程序委托(delegate)中的窗口中。

我真的不知道这有多么错误,但我在我的 AppDelegate 中尝试了类似的操作:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
DView *dV = [[DView alloc]initWithFrame:NSMakeRect(0, 0, 1000, 600)];
[self.window addSubview:dV];
}

我认为该窗口也是一个 NSView,那么为什么不将其添加到其中呢?但这会崩溃并以无限循环结束。我希望你可以帮助我。谢谢。

最佳答案

是的,

MONView * view = [[MONView alloc] initWithFrame:someFrame];

正确。

<小时/>

I figured that the window is an NSView as well

它不是一个 NSView(它是一个 NSResponder)。正如 Richard Stahl 指出的那样,您应该与窗口的内容 View 进行交互:[window.contentView addSubview:view];

关于macos - Cocoa - 如何以编程方式初始化 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12733864/

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