0

我有一个嵌入了 TextView 和 TableLayout 的 LinearLayout。这是我的 xml 文件的格式。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
 >
 <TextView
        android:id="@+id/txtHeader"
        android:layout_width="match_parent"
        android:text="Header"  />
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:stretchColumns="1">
     <TableRow>
      <!-- Column 1 -->
      <TextView
         android:id="@+id/row1Item1"
         android:text="Column1" />
       <!-- Column 2 -->
      <TextView
         android:id="@+id/row1Item2"
         android:text="Column2" />
     </TableRow>
</TableLayout> 
</LinearLayout>  

我正在向表中动态添加行。每次,我得到一个更新,我需要清除表并写入新信息(行数是变量)。所以,每当我必须更新时,我都会尝试清除表格作为第一步。

    ll = (LinearLayout)findViewById(R.id.wlayout);
    tb = (TableLayout)findViewById(R.id.wtable);

private void on Update(){
tb.removeAllViewsInLayout();

Create table dynamically..
}

但它也删除了我的文本标题。我也尝试过 ll.removeView(tb),其中 ll 是 LinearLayout。谁能帮帮我吗。我是安卓新手。谢谢你。

4

1 回答 1

0

您没有为 TableLayout 标签提供 id。请提供 id 然后尝试清除它。

 <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="+@id/wtable"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:stretchColumns="1">
     <TableRow>
      <!-- Column 1 -->
      <TextView
         android:id="@+id/row1Item1"
         android:text="Column1" />
       <!-- Column 2 -->
      <TextView
         android:id="@+id/row1Item2"
         android:text="Column2" />
     </TableRow>
</TableLayout> 

然后试试这个..

tb = (TableLayout)findViewById(R.id.wtable);  
tb.removeAllViewsInLayout();
于 2012-07-17T04:22:26.240 回答