これは私の .xml です。
セルに触れると、可視性が View.GONE として設定されますが、View.INVISIBLE として消えてしまいます。セルがあった場所に空きスペースがあります。セルのサイズは固定です。
正しく動作するように GridLayout を構成する方法は?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<GridLayout
android:id="@+id/grid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#DDDDDD"
android:columnCount="3"
android:rowCount="3" >
<LinearLayout
android:id="@+id/lin1"
android:layout_width="170px"
android:layout_height="170px"
android:background="#0099cc"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin2"
android:layout_width="170px"
android:layout_height="170px"
android:background="#99CC00"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin3"
android:layout_width="170px"
android:layout_height="170px"
android:background="#FFBB33"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin4"
android:layout_width="170px"
android:layout_height="170px"
android:background="#ff4444"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin5"
android:layout_width="170px"
android:layout_height="170px"
android:background="#33b5e5"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin6"
android:layout_width="170px"
android:layout_height="170px"
android:background="#aa66cc"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin7"
android:layout_width="170px"
android:layout_height="170px"
android:background="#9933cc"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin8"
android:layout_width="170px"
android:layout_height="170px"
android:background="#669900"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
<LinearLayout
android:id="@+id/lin8"
android:layout_width="170px"
android:layout_height="170px"
android:background="#ff8800"
android:onClick="hideCell"
android:orientation="horizontal" >
</LinearLayout>
</GridLayout>
</LinearLayout>
これは hideCell メソッドのコードです:
public void hideCell(View v) {
v.setVisibility(View.GONE);
}