1

我现在创建了一个视图我只想一个接一个地复制这个

<LinearLayout
    android:id="@+id/comp"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="top"
    android:orientation="horizontal" >
    <TextView
        android:id="@+id/txtComp1_Brand"
        android:layout_width="200sp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|left"
        android:gravity="center_vertical"
        android:text="ModelName"
        android:textSize="8pt"
        android:textStyle="bold" >
    </TextView>

    <CheckBox
        android:id="@+id/chkComp1GSB"
        android:layout_width="120sp"
        android:layout_height="40sp"
        android:layout_gravity="center_horizontal"
        android:gravity="center_horizontal|center_vertical"
        android:saveEnabled="true"
        android:text="" />

    <EditText
        android:id="@+id/editTxtNofISBCount"
        android:layout_width="80sp"
        android:layout_height="35sp"
        android:layout_gravity="center_vertical"
        android:gravity="center_vertical"
        android:inputType="number"
        android:maxLength="3"
        android:saveEnabled="true"
        android:textSize="8pt" >
    </EditText>  

</LinearLayout>

现在我想在线性布局中动态地一个接一个地复制它,就像这样

<LinearLayout
        android:id="@+id/comp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="top"
        android:orientation="vertical" >
    </LinearLayout>

我怎样才能做到这一点 ???

4

2 回答 2

1

使用<merge />和/或<include />。请参阅有关在 Android SDK 中重用布局的 Android 布局提示:

于 2012-05-25T07:46:08.500 回答
1

也可以动态添加

LinearLayout parent = (LinearLayout)findViewById(R.id.item);

in loop 
LinearLayout child = getLayoutInflater().inflate(R.layout.child);
 // fill in any details dynamically here
  TextView textView = (TextView) v.findViewById(R.id.txtComp1_Brand);
  textView.setText("text");
parent .addView(LinearLayout);
于 2012-05-25T07:47:59.683 回答