このレイアウトでは、右下に ImageButton 、中央下に TextView の 2 つのビューがあります。android:visibility
両方のビューが - に設定されている場合visible
、必要に応じてすべてが整列されます。しかし、android:visibility
ImageButton をgone
- EditText に設定すると、レイアウトの左端に移動します。
質問:
1) なぜそうなるのか?;
2)可視性をEditText
設定する場所を変更しない方法は? 左の図 (以下を参照) と同じレイアウトを取得する必要がありますが、ImageButton は使用しません。(1つの可能性はではなく に設定することですが、 での解決策にもっと興味があります)ImageButton
gone
visibility
gone
invisible
visibility = "gone"
Ps: 最初の 2 つのレイアウト (必須) は他RelativeLayout
のFrameLayout
ものに使用されます。質問に関係のないものはすべて削除しました。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<FrameLayout
android:id="@+id/mForSearchFragment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@id/mForAdMediation"
android:layout_alignWithParentIfMissing="true" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<EditText
android:id="@+id/mSearchEditText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:ems="5"
android:imeOptions="actionSearch"
android:inputType="text"
android:visibility="visible" >
<requestFocus />
</EditText>
<ImageButton
android:id="@+id/mSearchButton"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:background="@drawable/dark_button"
android:src="@drawable/tab_search"
android:visibility="visible" />
</RelativeLayout>
</FrameLayout>
</RelativeLayout>
レイアウトは次のとおりです。