gpt4 book ai didi

objective-c - 使用 NSImageView?

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

我创建了一个从 NSImageView 派生的类。然而,类的构造函数(init)没有被调用,因此我猜测 init 不是 NSImageView 的正确初始化程序。

NSImageView 的正确初始化程序是什么?我查看了manuals但他们似乎没有提到正确的 init 函数。谷歌搜索似乎没有提供任何具体的results任何一个。

我找到了一个可能的构造函数:

-(id) initWithFrame:(NSRect)frameRect

但我不确定这是否是正确的调用方式。我不太确定frameRect 是什么。

NSImageView 的默认初始化器/构造函数是什么? 注意,我正在开发一个桌面应用程序而不是 iOS 应用程序(如果这有影响的话)。NSImageView 子类对象已通过 Interface 放置在窗口中生成器,不是以编程方式。

最佳答案

NSView 派生的类可以使用 initWithFrame 以编程方式初始化,或者使用 awakeFromNib 从 NIB 文件加载时进行初始化。我所做的是调用一个公共(public)的、私有(private)的方法来执行初始化,无论它们是如何加载的:​​

// Private methods
@interface MyViewSubclass ()

- (void)_setupView;

@end

@implementation MyViewSubclass

- (id)initWithFrame:(NSRect)frame
{
self = [super initWithFrame:frame];
if (self != nil)
{
[self _setupView];
}
return self;
}

- (void)awakeFromNib
{
[self _setupView];
}

// Common initialisation (called by initWithFrame: and awakeFromNib).
- (void)_setupView
{
// Set stuff up
}

关于objective-c - 使用 NSImageView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11277577/

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