Выравнивание кнопки Android снизу в RelativeLayout? - PullRequest
12 голосов
/ 13 января 2011

Я пытаюсь выровнять кнопку в правом нижнем и левом нижнем углу экрана, используя RelativeLayoutЯ хочу сделать это, чтобы сохранить одинаковое относительное расположение на разных размерах экрана.В настоящее время кнопки на моем экране перемещаются вверх / вниз в зависимости от разрешения экрана.320x480 ставит кнопки выше на экране по сравнению с 480x800.Я пытаюсь заставить мои экраны выглядеть одинаково между двумя размерами.

Ответы [ 4 ]

41 голосов
/ 31 июля 2013

Я знаю, что это старая ветка, но она появляется вверху результатов поиска, поэтому я считаю, что не повредит подтвердить, что

android:layout_alignParentBottom="true"  

работает для меня в RelativeLayout.

4 голосов
/ 13 января 2011

Пример:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:panel="http://schemas.android.com/apk/res/it.kronplatz"
    android:id="@+id/MainLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <RelativeLayout
        android:id="@+id/ButtonLayout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_centerHorizontal="true"
        android:baselineAligned="false" >

        <ImageButton
            android:id="@+id/locateMeButton"
            android:layout_width="70px"
            android:layout_height="70px"
            android:layout_marginLeft="5px"
            android:src="@drawable/me" >
        </ImageButton>

        <ImageButton
            android:id="@+id/MapCenterButton"
            android:layout_width="70px"
            android:layout_height="70px"
            android:layout_alignParentRight="true"
            android:layout_gravity="right"
            android:layout_marginRight="5px"
            android:src="@drawable/fadenkreuz_klein" />

        <Button
            android:id="@+id/MapNextButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:drawableRight="@drawable/androidmarker" >
        </Button>
    </RelativeLayout>

</RelativeLayout>
4 голосов
/ 13 января 2011

Вы используете Android: layout_alignParent *? Это должно оправдать это в сторону, независимо от размера экрана.

Где * Нижняя или Верхняя или Левая или Правая

3 голосов
/ 13 января 2011

Кроме того, что сказал AedonEtLIRA, вы должны убедиться, что RelativeLayout у вас всегда заполнен всей областью отображения. то есть. что у вас нет какого-либо размера, определенного в любом месте иерархии представления, но вместо этого используется match_parent. Если вы затем использовали определения макета, данные AedonEtLIRA, вы должны получить именно то, что вы хотите.

...