Невозможно выровнять одну кнопку изображения вправо, а другую - влево - PullRequest
4 голосов
/ 19 апреля 2011

Это xml, в котором я пытаюсь удерживать одну кнопку изображения справа и в то время как слева?Я не понимаю, почему этого не происходит, хотя я тоже установил grvaity?

<LinearLayout android:id="@+id/linearLayout1"
      android:layout_height="wrap_content" android:gravity="center_horizontal"
       android:layout_width="wrap_content" android:layout_gravity="fill">
           <ImageButton android:layout_width="wrap_content"
        android:layout_gravity="left" android:id="@+id/imageButton1"
        android:src="@drawable/arrow_button_left"    android:layout_height="wrap_content"></ImageButton>
            <ImageButton android:layout_width="wrap_content"
            android:layout_gravity="right" android:id="@+id/imageButton2"
            android:src="@drawable/arrow_button_right"      android:layout_height="wrap_content"></ImageButton>
    </LinearLayout>

Ответы [ 3 ]

18 голосов
/ 19 апреля 2011

Вы должны использовать RelativeLayout вместо LinearLayout и установить атрибут layout_alignParentRight для второго ImageButton на true:

android:layout_alignParentRight="true"

чтобы ваш макет выглядел так:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/relativeLayout1" 
    android:layout_height="wrap_content" android:gravity="center_horizontal" 
    android:layout_width="fill_parent" android:layout_gravity="fill">
    <ImageButton android:layout_width="wrap_content" 
        android:id="@+id/imageButton1" 
        android:src="@drawable/arrow_button_left" 
        android:layout_height="wrap_content" />
    <ImageButton android:layout_width="wrap_content" 
        android:id="@+id/imageButton2" 
        android:src="@drawable/arrow_button_right" 
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true" />
</RelativeLayout>
1 голос
/ 19 апреля 2011

Вы устанавливаете ширину LinearLayout на wrap_content, поэтому она имеет минимальную ширину для размещения кнопок внутри себя. Эти кнопки нельзя выровнять просто потому, что в них нет места для выравнивания. Попробуйте установить fill_parent.

0 голосов
/ 19 апреля 2011

возможно, вы забудете android: ориентация = "горизонтальная" в LinearLayout, если вы использовали width для wrap_content.

Макет Else Relativle, как указано выше, идеально подходит для вас.

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