我已经创建了一个从NSImageView派生的类。但是,类的构造函数( init )没有被调用,因此我猜init不是NSImageView的正确初始化器。
NSImageView的正确初始化器是什么?我检查了手册,但是他们似乎没有提到正确的init函数。谷歌搜索似乎也没有提供任何具体的结果。
我找到了一个可能的构造函数:
-(id) initWithFrame:(NSRect)frameRect
但我不确定这是不是该打的电话。我不太确定frameRect是什么。
-- NSImageView的默认初始化器/构造函数是什么?备注--我正在开发桌面应用程序,而不是iOS应用程序,如果这使得difference.The NSImageView子类对象通过Interface放置在窗口中,而不是以编程的方式。
发布于 2012-06-30 20:56:20
如果它来自nib/xib,initWithCoder:
-(id)initWithCoder:(NSCoder *)coder发布于 2012-06-30 20:59:23
从NSView派生的类可以使用initWithFrame或在使用awakeFromNib从NIB文件加载时以编程方式初始化。我所做的是调用一个通用的私有方法来执行初始化,而不管它们是如何加载的:
// 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
}https://stackoverflow.com/questions/11277577
复制相似问题