在创建MyLabel
时,我总是设置一些参数,而不是每次都要将它们写出来,我宁愿将它们设置为自定义类的默认值。
我试过这个没有运气:
@interface MyLabel: NSTextField
@end
@implementation MyLabel
-(id)init {
if (self = [super init]) {
[self setWantsLayer:YES];
[self setSelectable:YES];
[self setEditable:NO];
[self setBordered:NO];
}
return self;
}
@end
初始化没有被调用。
MyLabel
被称为:
MyLabel* error_label = [[MyLabel alloc] initWithFrame: ...
答案 0 :(得分:1)
请勿使用initWithFrame
。仅使用init
拨打电话。
尝试以下代码
MyLabel* error_label = [[MyLabel alloc] init];
您可以在初始化之后设置帧,如下所示
[error_label setFrame::CGRectMake(0, 0, 0, 0)]; // set co-ordinates accordingly