2

タグ内のxmlの属性をオーバーライドすることは可能ですか?

parent.xml

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    <include  
        layout="@layout/button"
         android:text="HAHAHAH"
         />
</TableLayout>

button.xml:

    <?xml version="1.0" encoding="utf-8"?>
   <TextView  xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="some string" />

「文字列」を「ははは」に変更することはできますか?

4

1 に答える 1

5

はいおよびいいえ:)「はい」、一般にXMLの属性をオーバーライドできるため、「いいえ」。この場合、android:layout_*属性の変更のみが有効になるためです。

android:layout_* タグで指定することにより、含まれているレイアウトのルートビューのすべてのレイアウトパラメーター(任意の属性)をオーバーライドすることもできます。例えば:

<include android:id=”@+id/news_title”
         android:layout_width=”match_parent”
         android:layout_height=”match_parent”
         layout=”@layout/title”/>

ただし、タグを使用してレイアウト属性をオーバーライドする場合は、他のレイアウト属性を有効にするために、android:layout_heightとandroid:layout_widthの両方をオーバーライドする必要があります。

http://developer.android.com/training/improving-layouts/reusing-layouts.html#Include

于 2013-01-02T19:15:28.190 に答える