我有5个xmls.in每个xml我创建了10个按钮。我的问题是,无论如何都要避免在每个xml.in每个xml中为按钮编写相同的代码,还有不同的元素也存在。只有10个按钮是在每个xml中都很常见。例如:
xml1-> button 1 button2 button3 button4(present at top) textbox
xml2-> button 1 button2 button3 button4(present at top) editbox
xml3-> button 1 button2 button3 button4(present at top) imagebutton
xml4-> button 1 button2 button3 button4(present at top) listview
它不是我的原始代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/editText1"
android:layout_alignBottom="@+id/editText1"
android:layout_alignParentRight="true"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</relativelayout>
答案 0 :(得分:2)
你可以在一个xml中有一个按钮,然后在你想要的布局中使用include标签。
<include android:id="@+id/b1" layout="@layout/button_layout" />
这是Romain Guy关于同一个
的博客http://www.curious-creature.org/2009/02/25/android-layout-trick-2-include-to-reuse/
答案 1 :(得分:2)
您可以使用重复的10个按钮创建一个xml(如果它们总是一起显示):
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center" >
<Button
android:id="@+id/button1"
...
/>
<Button
android:id="@+id/button2"
...
/>
...
</relativelayout>
然后,将此xml包含在不同的布局中:
<include layout="@layout/ten_buttons"/>
但是如果以不同的方式包含10个按钮,那么你应该为每个按钮创建一个xml:button1.xml,button2.xml,button3.xml等,并分别包含它们:
<include layout="@layout/button1"/>
<include layout="@layout/button2"/>
<include layout="@layout/button3"/>