Как один центр выровняет несколько кнопок в относительной компоновке? - PullRequest
2 голосов
/ 26 мая 2011

Я пытаюсь выяснить, как по центру выровнять три кнопки.Веб-представление правильно расположено под кнопками.Я искал что-то, что является эквивалентом div, где я мог бы добавить атрибут layout_centerInParent.Я могу выровнять по центру одну кнопку, но не несколько, и мне не удалось найти нужный ресурс.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent">
    <Button android:layout_centerInParent="true" android:onClick="backclick" android:layout_alignParentTop="true" android:id="@+id/btnBack" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Back" android:layout_alignParentLeft="true"></Button>
    <ImageButton android:layout_centerInParent="true" android:onClick="oclick" android:layout_alignParentTop="true" android:src="@drawable/hto" android:id="@+id/btnLogo" android:layout_width="156dip" android:layout_height="48dip" android:layout_toRightOf="@+id/btnBack"></ImageButton>
    <Button android:layout_centerInParent="true" android:onClick="oclick" android:layout_alignParentTop="true" android:id="@+id/btnRefresh" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Home" android:layout_toRightOf="@+id/btnLogo"></Button>
    <WebView android:id="@+id/webView" android:layout_alignParentBottom="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/btnRefresh"></WebView>
</RelativeLayout>

Редактировать: я изменил код Франкенштейна для этого.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent">
    <LinearLayout android:id="@+id/lytMenu" android:layout_alignParentTop="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_centerInParent="true">   
     <Button android:onClick="backclick" android:layout_alignParentTop="true" android:id="@+id/btnBack" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Back" android:layout_alignParentLeft="true"></Button>
     <ImageButton android:onClick="oclick" android:layout_alignParentTop="true" android:src="@drawable/hto" android:id="@+id/btnLogo" android:layout_width="156dip" android: layout_height="48dip" android:layout_toRightOf="@+id/btnBack"></ImageButton>
     <Button android:onClick="oclick" android:layout_alignParentTop="true" android:id="@+id/btnRefresh" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Home" android:layout_toRightOf="@+id/btnLogo"></Button>
    </LinearLayout>    
   <WebView android:id="@+id/webView" android:layout_alignParentBottom="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/lytMenu"></WebView>
</RelativeLayout>

Ответы [ 2 ]

3 голосов
/ 26 мая 2011

Вы хотите, чтобы кнопки располагались друг за другом, поэтому вы должны использовать LinearLayout для этого.Измените атрибут android: direction на вертикальный, если вы хотите, чтобы кнопки располагались вертикально.LinearLayout центрируется в родительском элементе.

<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent">
    <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_centerInParent="true">
        <Button android:onClick="backclick" android:layout_alignParentTop="true" android:id="@+id/btnBack" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Back" android:layout_alignParentLeft="true"></Button>
        <ImageButton android:onClick="oclick" android:layout_alignParentTop="true" android:src="@drawable/hto" android:id="@+id/btnLogo" android:layout_width="156dip" android:layout_height="48dip" android:layout_toRightOf="@+id/btnBack"></ImageButton>
        <Button android:onClick="oclick" android:layout_alignParentTop="true" android:id="@+id/btnRefresh" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Home" android:layout_toRightOf="@+id/btnLogo"></Button>
    </LinearLayout>
    <WebView android:id="@+id/webView" android:layout_alignParentBottom="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/btnRefresh"></WebView>
</RelativeLayout>
0 голосов
/ 26 мая 2011

Оберните кнопки в элемент контейнера (a <div>?) И расположите его по центру.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...