Android Studio如何动态删除XML视图中的所有行?

时间:2019-03-02 01:40:06

标签: android android-layout scrollview android-tablelayout

我一直在尝试删除XML视图中动态分配的所有行,但是它不能正常工作。我尝试使用RemoveAllViewsremoveAllViewsInLayout或什至getChildCount()使用for循环。

现在,如果我取消注释removeAllViewsInLayout,结果将是删除它,但是会继续显示数组的最后一个索引。如果删除它,它将在每次选择“底部导航视图”时动态附加,从而创建一个无尽的表格。

代码如下:

private void createTable(int imageID) {

        TableLayout grd_overview = findViewById(R.id.table);
        TableRow tr = new TableRow(this);

        /*grd_overview.removeAllViewsInLayout();*/

        grd_overview.setShrinkAllColumns(true);
        grd_overview.setStretchAllColumns(true);

        int x = 0;

        tr.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT,
                TableRow.LayoutParams.WRAP_CONTENT));

        for (int i = 0; i < 1; i++) {

            ImageView iv = new ImageView(this);
            iv.setImageResource(imageID);
            tr.addView(iv);
            x++;
        }

        grd_overview.addView(tr);

    }

我的XML如下:

<LinearLayout
        android:id="@+id/llayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginBottom="?attr/actionBarSize"
        android:orientation="vertical">


        <ImageView
            android:id="@+id/header_image"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:scaleType="centerCrop" />

         <ScrollView
             android:id="@+id/scroll"
             android:layout_width="match_parent"
             android:layout_height="wrap_content">

             <TableLayout
                   android:id="@+id/table"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content">
             </TableLayout>
         </ScrollView>
    </LinearLayout>

0 个答案:

没有答案