0

私はいくつかUITextViewの s にいくつかの s を持っていViewControllerます。TextView以前は、やなどのカスタム描画が必要な場合は、UI オブジェクトを所有する VC 内でLabel描画を調整するだけでした。viewWillAppear今回は、いくつかのインスタンスをカスタマイズする必要があります。

同じ描画コードを複数の VC に分散させるよりも、サブクラスを作成しUITextViewて描画コードを含める方が適切でしょうか。drawRect私は主にパフォーマンスについて心配しています。ただし、コードの保守性は二次的な問題です。

明確にするために、これは drawRect で使用するものです。

- (void)drawRect:(CGRect)rect {
    self.layer.cornerRadius = 10;
    self.clipsToBounds = YES;
}

したがって、さらにテストした後、initWithFrame呼び出されませんが、呼び出されinitWithCoderます。initWithCoderまた、が呼び出されることもわかりましたdrawRect。私のユースケース(セル内にStaticCellTableViewUITextViewある場合、違いは何ですか?

4

3 に答える 3

3

サブクラス化された UITextView の init または initWithCoder (xib またはストーリーボードの場合) メソッドにこれらの 2 行を含めることができます。基本的に、これはオブジェクトの単なるプロパティです。UIView が更新されるたびに実行する必要はありません。

于 2013-04-23T13:24:19.583 に答える
0

ビューの drawRect は更新ごとに呼び出されるため、これらの行をビューの drawRect に配置しません。UITextView をサブクラス化し、それらの行をカスタム init メソッドに追加することをお勧めします。

于 2013-04-23T13:28:25.680 に答える