0

Interface Builder で使用したいカスタム ビューがあります。以下のような設定です。

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

-(void)initialize {
....
}

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

- (void)layoutSubviews {
    [super layoutSubviews];
    ...frame stuff
}

しかし、インターフェイスビルダーでクラスを使用すると、フレームを受信して​​いません。境界だけです。つまり、原点は 0,0 のままですが、幅/高さは正しく設定されます。誰かが何が間違っているかを指摘できれば、私はとてもうれしいです。

アップデート:

IBでこれを見つけました: ここに画像の説明を入力

4

1 に答える 1

0

- (void)awakeFromNib;カスタム ビューをオーバーライドします。その時点で、フレームをセットアップする必要があります。

于 2013-09-08T21:05:55.423 に答える