我有一个RootLayout [可以设置任何布局],例如:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainRootLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageButton
android:id="@+id/ibtnHidden"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@android:drawable/ic_menu_add" />
<ImageButton
android:id="@+id/ibtnPlay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/ibtnHidden"
android:layout_marginLeft="9dp"
android:layout_toRightOf="@+id/ibtnHidden"
android:src="@android:drawable/ic_media_play" />
<ImageButton
android:id="@+id/ibtnPreference"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/ibtnHidden"
android:layout_marginLeft="9dp"
android:layout_toRightOf="@+id/ibtnPlay"
android:src="@android:drawable/ic_menu_preferences" />
<ImageButton
android:id="@+id/ibtnExit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/ibtnHidden"
android:layout_marginLeft="9dp"
android:layout_toRightOf="@+id/ibtnPreference"
android:src="@android:drawable/ic_menu_close_clear_cancel" />
</RelativeLayout>
ibtn_Hidden = (ImageButton) view.findViewById(R.id.ibtnHidden);
ibtn_Play = (ImageButton) view.findViewById(R.id.ibtnPlay);
ibtn_Preference = (ImageButton) view.findViewById(R.id.ibtnPreference);
ibtn_Exit = (ImageButton) view.findViewById(R.id.ibtnExit);
当我调用“ibtn_Play.setVisible(View.GONE); ibtn_Preference.setVisible(View.GONE); ibtn_Exit.setVisible(View.GONE)”时,ibtn_Hidden的位置会改变。
我想这是因为其他人已被暂时删除,视图的大小也会发生变化,并且正处于变化的中间。
如何在调用setVisible(View.GONE)后保持ibtn_Hidden的位置不变,而其他人[ibtn_Play ibtn_Preference ibtn_Exit]不应该占用空间?谢谢〜
答案 0 :(得分:1)
如果您希望视图不可见,但仍然保持其布局影响,则可以使用此:
imageButton2.setVisibility(View.INVISIBLE);
希望这会有所帮助:)