私はAndroidアプリケーションを作成しています。draw
カスタムの外観を作成するには、多数の UI クラスでメソッドをオーバーライドする必要があります。これらのクラスはすべてサブクラスView
です。これを行う最善の方法は何だろうと思っています。できるだけコードを再利用できるようにしたいので、整理の助けを求めています。私が今見ているように、私には2つのオプションがあります:
オプション 1 - すべてをサブクラス化する
使いたければLinearLayout
作るCustomLinearLayout
。使いたければImageView
作るCustomImageView
。これらのカスタム クラスのそれぞれで、draw
まったく同じ方法でオーバーライドします。コードを繰り返し、ほとんど何もしない多くのクラスを拡張しているため、これは効率的ではないようです。
オプション 2 - スーパー クラスをサブクラス化する
私の最初の考えは、 を拡張View
して作成するCustomView
ことでした。これは、使用したいすべてのクラスのスーパークラスであるからです。ただし、これは機能しません。使用したい既存のすべてのサブクラスがまだView
ではなくを拡張しているためCustomView
です。
これを行うより良い方法はありますか?何か不足していますか?