我一直在尝试删除XML视图中动态分配的所有行,但是它不能正常工作。我尝试使用RemoveAllViews
,removeAllViewsInLayout
或什至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>