我有两个布局(~80行),它们只在几个文本值中相互不同。我可以通过xml删除这样的复制吗?或者我只能通过每次设置不同的字符串资源以编程方式执行此操作?
简单示例:
第一个xml:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/background"
android:orientation="vertical"
android:paddingTop="@dimen/padding_top"
android:paddingBottom="@dimen/padding_bottom"
android:paddingLeft="@dimen/padding_left"
android:paddingRight="@dimen/padding_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:src="@drawable/image"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<View
android:layout_height="@dimen/space_between_image_and_text"
android:layout_width="1dp" />
<TextView
android:text="@string/title_1"
android:textStyle="bold"
android:textColor="@color/text_color_title"
android:singleLine="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:text="@string/details_1"
android:textColor="@color/text_color_details"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
第二个xml:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/background"
android:orientation="vertical"
android:paddingTop="@dimen/padding_top"
android:paddingBottom="@dimen/padding_bottom"
android:paddingLeft="@dimen/padding_left"
android:paddingRight="@dimen/padding_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:src="@drawable/image"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<View
android:layout_height="@dimen/space_between_image_and_text"
android:layout_width="1dp" />
<TextView
android:text="@string/title_2"
android:textStyle="bold"
android:textColor="@color/text_color_title"
android:singleLine="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:text="@string/details_2"
android:textColor="@color/text_color_details"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
它们的区别仅在于文字值:@string/title_1
与@string/title_2
,@string/details_1
与@string/details_2
。
抱歉我的英文
答案 0 :(得分:2)
只使用相同的布局 - 给出textviews id&#39; s并在通胀后设置字符串