1

我的应用中有布局,其中包含滚动横幅(如果您查看我的 XML,它还没有完成),并且此横幅将用于其他活动。所以我想让它成为一个自定义布局,所以我不会复制粘贴 X 次。

这是我的 XML(嗯......我不确定是否一切都正确,所以对此部分的任何批评表示赞赏)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="match_parent" 
    android:id="@+id/baseID">

    <RelativeLayout
        android:layout_centerInParent="true"
        android:layout_width="fill_parent"
        android:layout_height="100dp"
        android:id="@+id/id1"
        android:background="#ff00ff">
        <Button 
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_marginLeft="25dp"
            android:layout_marginRight="25dp"/>
    </RelativeLayout>

    <LinearLayout 
            android:layout_width="fill_parent"
            android:layout_height="1dp"
            android:layout_alignTop="@id/id1"
            android:layout_alignBottom="@id/id1"
            android:id="@+id/id2"
            android:background="#08000000"  
            android:orientation="horizontal">

            <Button
                android:id="@+id/button1"
                android:layout_width="20dp"
                android:layout_height="fill_parent"
                android:layout_weight="1"

                android:onClick="onClick"
                android:text="1" />

            <TextView 
                android:layout_height="fill_parent"
                android:layout_width="wrap_content"
                android:text="to jest moj tekst"
                android:layout_weight="16"/>

            <Button
                android:id="@+id/button2"
                android:layout_width="20dp"
                android:layout_height="fill_parent"
                android:layout_weight="1"

                android:onClick="onClick"
                android:text="1" />

    </LinearLayout>

</RelativeLayout>

目前此布局仅包含横幅,但会有更多内容。

问题是:我如何将它放到外部课程中?

我知道我必须创建一个扩展RelativeLayout(在这种情况下为int)的新类。但是然后呢?如何为此类设置布局?

我也做了一些研究,但我没有找到任何简单而准确的教程。如果你知道任何 - 请张贴。

4

2 回答 2

1

你可以使用 <include> 像:

 <include layout="@layout/menu" />

您甚至可以重写包含的 xml 布局的根标记的属性,例如

  <include android:id="@+id/my_menu" layout="@layout/menu" />

有关更详细的说明,请参阅开发人员博客

http://android-developers.blogspot.com.es/2009/02/android-layout-tricks-2-reusing-layouts.html

于 2012-10-22T23:21:37.527 回答
0

you'll have to work with Fragment: http://developer.android.com/reference/android/app/Fragment.html

Fragments enable developers to split VIEW/Controller into differents classes.

So, you will add to your xml will differents fragments and each fragment are in charge of his owns components (textview, button...).

于 2012-10-22T15:06:48.600 回答