子类化UIView,一种设置initWithFrame:或awakeFromNib的方法

时间:2013-03-21 19:54:16

标签: uiview initialization subclassing

当继承UIView时,我倾向于创建一个名为“setup”的私有方法,我将其放入initWithFrameawakeFromNib

这是其他人倾向于做的吗?或者有一种我不知道的方法就是我要做的事情。

我参加了UIView课程参考,但我看不到任何内容,所以只是想知道别人做了什么?

1 个答案:

答案 0 :(得分:0)

我实际上避免使用-awakeFromNib而是使用-initWithCoder:。这是我典型的UIView子类设置:

- (id)initWithFrame:(CGRect)frame {
    if (self = [super initWithFrame:frame]) {
        [self _init];
    }
    return self;
}

- (id)initWithCoder:(NSCoder *)aDecoder {
    if (self = [super initWithCoder:aDecoder]) {
        [self _init];
    }
    return self;
}

- (id)init {
    if (self = [super init]) {
        [self _init];
    }
    return self;
}

- (void)_init {

}

我实际上也有一个Snippet来做这件事。我只需输入

init_view

它产生了以上所有内容。