Android Studio, как динамически удалить все строки в представлении XML? - PullRequest
0 голосов
/ 02 марта 2019

Я пытался удалить все строки, которые были динамически выделены в представлении XML, но это не работает должным образом.Я пытался использовать RemoveAllViews, removeAllViewsInLayout или даже использовать цикл for с getChildCount().

Теперь, если я раскомментирую 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>
...