重用包装器布局

时间:2016-10-04 08:43:36

标签: android

我有几十个使用非常相似的布局的ViewHolder。它们都有共同的#34;包装器#34;并且唯一改变的是包装器的内容。

例如(wrapper_layout.xml):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    ...  >
    <LinearLayout
        android:id="@+id/something"
        android:orientation="horizontal" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        <Button android:id="@+id/test"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
        ...
    </LinearLayout>

    <LinearLayout
        android:id="@+id/container"
        android:orientation="horizontal" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        <!-- Only the content of this LinearLayout changes -->
    </LinearLayout>

    <LinearLayout
        android:id="@+id/something_else"
        android:orientation="horizontal" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        ...
        <TextView
            android:id="@+id/message_sender"
            tools:text="Jon Snow"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </LinearLayout>
</LinearLayout>

我想与所有ViewHolders一起重用此布局,并仅更改R.id.container的内容。

目前我正在使用ViewStub.setLayoutResource(R.layout.xxxx),但我想知道是否有更好的方法,也许只能通过XML。

0 个答案:

没有答案