0

私のクラスはUIImageViewのサブクラスです。このようにカスタム初期化子を作成します

@interface FishView : UIImageView
@end

@implementation FishView

- (id)initWithFishType:(FishType)fishType {

    self = [super init];
    if (self) {
        //my custom initialization
    }
    return self;

}

initWithImage をオーバーライドする必要がありますか?

- (id)initWithImage:(UIImage)image
{
    self = [super initWithImage:image];
    if (self) {
        [self initWithFishType:FTNone];
    }
    return self;
}   
4

3 に答える 3

1

コードで initWithImage を呼び出す予定があり、何か特別なことをしたい場合のみ。

于 2012-05-20T14:28:53.143 に答える
0

そこに追加の機能が必要な場合にのみオーバーライドする必要があります。

しかし、私があなたの質問を次のように読んでいる場合initWithImage:initWithFrame

于 2013-10-07T22:35:37.370 に答える
0

Swift 2 では、UIImageViewサブクラスに必要な唯一の初期化子は

required init?(coder: NSCoder) { super.init(coder: coder) }
于 2016-05-20T03:52:00.750 に答える