0

メソッドのオーバーライドについて質問がありました。ビューをインスタンス化するとき、2 つのオプションがあります。

1. プログラムでビューをインスタンス化します。

View view = new View( .... ){
      onDraw(){

         .......
      }

 };

2.レイアウトからビューをインスタンス化します。

View view = findViewbyid(...){

        onDraw(){
           .......
        }
};

私の質問は、2番目のオプションに示されているようにメソッドをオーバーライドする可能性はありますか?

ありがとうございます。それでは、お元気で、

しゃ。

4

2 に答える 2

3

いいえ、2 番目のオプションは使用できません。ただし、カスタムクラスを作成して、extends View内部で必要なものをオーバーライドすることはできます。

于 2012-09-19T11:14:30.510 に答える
2

いいえ、2 番目のオプションではできません。使用findViewByIdすると、ネイティブの Android View クラスが既にインスタンス化されており、コンストラクターが呼び出されます public View (Context context, AttributeSet attrs)。カスタム ビューを作成し、必要に応じて の実装をオーバーライド onDraw(Canvas canvas)する必要があります。

于 2012-09-19T11:23:34.380 に答える