Если у меня есть макет с именем bottom.xml ,
bottom.xml: (просто содержиттекстовое представление и редактирование текстового представления)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="vertical"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:text="@string/username"
/>
<EditText
android:id="@+id/name"
android:layout_width="120dip"
android:layout_height="50dip"
android:layout_gravity="center_horizontal"
/>
</LinearLayout>
Есть ли способ встроить вышеупомянутый bottom.xml взамен других макетов вместоповторять написание одного и того же кода в нескольких файлах макетов (когда другие макеты содержат часть, которая содержит тот же макет, что и bottom.xml)?
Например, если мой admin.xml макет также содержит часть макета, которая выглядит точно так же, как bottom.xml , как просто вставить bottom.xml внутри admin.xml вместо того, чтобы снова писать тот же код?
admin.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
...
...
<!--How to embed bottom.xml here-->
...
</LinearLayout>
Если нет способа сделать это в Android, какой может быть обходной путь ??
---------- Обновление -----------
Как и предложил @xevincent, я могу использовать bottom.xml с помощью тега <include>
,
Но как изменить идентификатор элементов внутри возобновленного макета?
Например, insdie bottom.xml , я хотел бы изменить идентификатор <editText android:id="@+id/name">
на <editText android:id="@+id/other_name">
при повторном использовании bottom.xml макет в другой макет, как изменить идентификатор?