0

一般に、ビュー階層に冗長なレイアウトを持たずに、実行時に XML で定義されたカスタム レイアウトを拡張する方法を知りたいです。

今、特に:

XML で宣言されたカスタム レイアウトがありmy_relative_layout.xml、そのルート要素は RelativeLayout です。という RelativeLayout を拡張するクラスも定義しましたMyRelativeLayout.java

階層内に冗長な RelativeLayout がないようにするにはmy_relative_layout.xmlどうすればよいでしょうか。MyRelativeLayout.java

使用してみ<merge> ました-すべてのルート要素属性がmy_relative_layout.xml影響しなかったため、レイアウトの内容が台無しになりました。

また、カスタム レイアウト クラスを のルート要素として宣言しようとしましmy_relative_layout.xmlたが、インフレ例外が発生しました (xml をインフレートしているときに、ルート要素を null または this に設定しようとしましたMyRelativeLayout.java- ルートへのアタッチで true または false を使用)。

4

1 に答える 1

0

結局<merge>タグ使いました。RelativeLayout実行時にすべてのレイアウト パラメータを設定する必要があることに注意してください。

于 2013-02-04T19:40:55.860 に答える