Как позиционировать LinearLayouts в относительном расположении в Android? - PullRequest
0 голосов
/ 18 декабря 2018

Как расположить LinearLayout выше или ниже других LinearLayout, которые находятся внутри RelativeLayout

<RelativeLayout
    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"
    android:id="@+id/RelativeLayout1>
    <LinearLayout
         android:layout_width="350dp"
         android:layout_height="match_parent"
         android:layout_centerHorizontal="true"
         android:layout_alignParentBottom="true"
         android:layout_above="@id/contentLayout"
         android:orientation=vertical
         android:translationZ="2dp"
         android:id="@+id/contentLayout">
    </LinearLayout>
    <LinearLayout
         android:layout_height="wrap_content"
         android:layout_width="match_parent"
         android:orientation="horizontal"
         android:layout_alignParentBottom="true"
         android:translationZ="2dp"
         android:id="@+id/settingslayout">
    <ImageButton
        android:src="@android:drawable/ic_menu_gallery"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:id="@+id/refreshImageButton"/>
    <ImageButton
        android:src="@android:drawable/ic_menu_gallery"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="20"
        android:id="@+id/selectedImageButton"/>
    <ImageButton
        android:src="@android:drawable/ic_menu_gallery"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:id="@+id/settingsImageButton"/>
     </LinearLayout>
 </RelativeLayout>

contentLayout перекрывается settingslayout как поставить его выше settingslayout?

enter image description here

Ответы [ 2 ]

0 голосов
/ 18 декабря 2018

Измените RelativeLayout на LinearLayout и назначьте веса вместо установки высоты.Следуйте приведенному ниже коду:

<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"
android:id="@+id/RelativeLayout1>
<LinearLayout
     android:layout_width="350dp"
     android:layout_height="0dp"
     android:layout_weight=" 3 "
     android:layout_centerHorizontal="true"
     android:layout_above="@id/contentLayout"
     android:orientation=vertical
     android:translationZ="2dp"
     android:id="@+id/contentLayout">
</LinearLayout>
<LinearLayout
     android:layout_height="0dp"
     android:layout_weight="1"
     android:layout_width="match_parent"
     android:orientation="horizontal"
     android:layout_alignParentBottom="true"
     android:translationZ="2dp"
     android:id="@+id/settingslayout">
<ImageButton
    android:src="@android:drawable/ic_menu_gallery"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:id="@+id/refreshImageButton"/>
<ImageButton
    android:src="@android:drawable/ic_menu_gallery"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="20"
    android:id="@+id/selectedImageButton"/>
<ImageButton
    android:src="@android:drawable/ic_menu_gallery"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:id="@+id/settingsImageButton"/>
 </LinearLayout>
 </RelativeLayout>
0 голосов
/ 18 декабря 2018
`<LinearLayout
     android:layout_width="350dp"
     android:layout_height="match_parent"
     android:layout_centerHorizontal="true"
     android:layout_above="@id/settingslayout"/*you should enter settinglayout*/
     android:orientation=vertical
     android:translationZ="2dp"
     android:id="@+id/contentLayout">
</LinearLayout>`
...