在LinearLayout中使用<include>标记</include>

时间:2012-01-26 20:14:50

标签: android android-linearlayout

根据我的理解,<include>标记基本上是复制和粘贴,因此我创建了一个视图,其中包含一对textviews,我复制了几次

<LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" 
        android:background="#000000">

            <include android:id="@+id/frame_one" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_two" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_three" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_four" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_five" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_six" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_seven" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_eight" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_nine" layout="@layout/frame_layout_normal"/>
            <include android:id="@+id/frame_ten" layout="@layout/frame_layout_last"/>

    </LinearLayout> 

现在我的问题是如何为我创建的每个包含标签单独更改textview文本?

显然我必须得到布局的视图ID,但不知道在那之后要做什么?

这就是frame_layout_normal

中的所有内容
    <TextView android:layout_height="50dp"
    android:id="@+id/frame_name"
    android:layout_width="121dip"
    android:layout_alignParentTop="true"
    android:gravity="center"
    android:textColor="#000000"
    android:layout_marginTop="2dip"
    android:background="#ffffff"
    android:textAppearance="?android:attr/textAppearanceLarge"/>

<TextView android:id="@+id/frame_number"
    android:layout_height="50dp"
    android:layout_width="121dip"
    android:layout_below="@+id/frame_name"
    android:gravity="center"
    android:textColor="#000000"
    android:layout_marginTop="2dip"
    android:background="#ffffff"
    android:textAppearance="?android:attr/textAppearanceLarge"/>

1 个答案:

答案 0 :(得分:1)

如果你在LinearLayout中包装frame_layout_normal的内容,这应该有效:

LinearLayout frameOne = (LinearLayout) findViewById(R.id.frame_one);
TextView frameOneName = (TextView) frameOne.findViewById(R.id.frame_name);

<include>允许您设置您正在执行的顶级元素的ID,因此只需使用这些ID来获取您的帧。