Адаптировать нижнее меню ко всем экранам

Я разработал одно нижнее меню в му приложение для Android

он отлично работает на экране, на котором я работаю

но если я изменю экран, он не заполняет всю ширину экрана, даже если я установил ширину относительной длины для fill_parent

вот код меню:

    <RelativeLayout
    android:id="@+id/bar_bas"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:orientation="horizontal" >

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="@null"
        android:clickable="true" >

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/right_left"
            android:text="test"
            android:textColor="#bfd2b0" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/relativeLayout1"
        android:clickable="true" >

        <Button
            android:id="@+id/btn_circle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/left_circle"
            android:text="test"
            android:textColor="#bfd2b0" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_marginLeft="-40dp"
        android:layout_toRightOf="@+id/relativeLayout2"
        android:clickable="true" >

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/circle"
            android:text="test"
            android:textColor="#bfd2b0" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="-38dp"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/relativeLayout3"
        android:clickable="true" >

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/right_circle"
            android:text="test"
            android:textColor="#bfd2b0" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/relativeLayout4"
        android:clickable="true" >

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/right_left"
            android:text="test"
            android:textColor="#bfd2b0" />
    </RelativeLayout>
</RelativeLayout>

и вот как это на моем экране: http://s23.postimg.org/m3h37utuj/image.png и вот пример другого экрана (экран планшета): http://s24.postimg.org/hd0ibrahh/image.png

как я могу исправить эту проблему

2 ответа

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/bar_bas"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >

<Button
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:background="#ff00ff"
    android:text="test"
    android:layout_weight="1"
    android:textColor="#bfd2b0" />

<Button
    android:id="@+id/btn_circle"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:background="#FF0000"
    android:text="test"
    android:layout_weight="1"
    android:textColor="#bfd2b0" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#ff00AA"
    android:text="test"
    android:layout_weight="1"
    android:textColor="#bfd2b0" />

<Button
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:background="#ffaaff"
    android:text="test"
    android:layout_weight="1"
    android:textColor="#bfd2b0" />

<Button
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:background="#00AAff"
    android:text="test"
    android:layout_weight="1"
    android:textColor="#bfd2b0" />

</LinearLayout>

Отметьте это, wrap_parent означает, что он займет как можно меньше места.

Попробуй это..

<LinearLayout
    android:id="@+id/bar_bas"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:orientation="horizontal" >       

        <Button
            android:layout_height="0dp"
            android:layout_weight="0.2"
            android:layout_height="wrap_content"
            android:background="@drawable/right_left"
            android:text="test"
            android:textColor="#bfd2b0" />

        <Button
            android:id="@+id/btn_circle"
             android:layout_height="0dp"
            android:layout_weight="0.2"
            android:layout_height="wrap_content"
            android:background="@drawable/left_circle"
            android:text="test"
            android:textColor="#bfd2b0" />        

        <Button
             android:layout_height="0dp"
            android:layout_weight="0.2"
            android:layout_height="wrap_content"
            android:background="@drawable/circle"
            android:text="test"
            android:textColor="#bfd2b0" />       

        <Button
             android:layout_height="0dp"
            android:layout_weight="0.2"
            android:layout_height="wrap_content"
            android:background="@drawable/right_circle"
            android:text="test"
            android:textColor="#bfd2b0" />        

        <Button
             android:layout_height="0dp"
            android:layout_weight="0.2"
            android:layout_height="wrap_content"
            android:background="@drawable/right_left"
            android:text="test"
            android:textColor="#bfd2b0" />

</LinearLayout>
Другие вопросы по тегам