I have this layout, like on the image below, with 36 images. I set src to those imageButtons and that works fine. Now I set imageButton.setVisibility(View.GONE); and that also works fine. But when I "vanish" one of the buttons with click, all the others move for one place and that's bad. How to make all the other stay put?
My XML:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/background" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="365dp" >
<ImageView
android:id="@+id/ivSlika"
android:layout_width="fill_parent"
android:layout_height="match_parent" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="365dp"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/ib1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_01"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_02"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_03"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_04"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_05"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_06"
android:padding="0dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/ib7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_07"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_08"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_09"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_10"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_11"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_12"
android:padding="0dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/ib13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_13"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_14"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib15"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_15"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib16"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_16"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib17"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_17"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib18"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_18"
android:padding="0dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/ib19"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_19"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib20"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_20"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_21"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_22"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib23"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_23"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib24"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_24"
android:padding="0dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/ib25"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_25"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib26"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_26"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib27"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_27"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_28"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib29"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_29"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib30"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_30"
android:padding="0dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/ib31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_31"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib32"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_32"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib33"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_33"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib34"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_34"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib35"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_35"
android:padding="0dp" />
<ImageButton
android:id="@+id/ib36"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bricks_36"
android:padding="0dp" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/bIzlazCigle"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="390dp"
android:background="@drawable/buttons_final"
android:padding="0dp"
android:text="Izlaz"
android:textColor="#ffffff"
android:textSize="19sp" />
<Button
android:id="@+id/bKonacnoCigle"
android:layout_width="180dp"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="390dp"
android:background="@drawable/buttons_final"
android:padding="0dp"
android:text="Konačno rešenje!"
android:textColor="#ffffff"
android:textSize="19sp" />
</LinearLayout>
</FrameLayout>
I set them invisible like this:
public void onClick(View v) {
switch(v.getId()){
case R.id.ib1:
b1.setVisibility(View.GONE);
break;
case R.id.ib2:
b2.setVisibility(View.GONE);
break;
case R.id.ib3:
b3.setVisibility(View.GONE);
break;
case R.id.ib4:
b4.setVisibility(View.GONE);
break;
case R.id.ib5:
b5.setVisibility(View.GONE);
break;
case R.id.ib6:
b6.setVisibility(View.GONE);
.
.
.
.
.
}
您可以使用View.INVISIBLE而不是View.GONE
For this you can use View.INVISIBLE instead of View.GONE . Actually When you use View.GONE it will not take any space on layout. But when you use View.INVISIBLE , it will just not visible on screen but it actually still remain on layout. You are using Padding 0(zero) . so when one image is gone on click other will move forward , due to zero padding.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.