Android, как добиться этого макета - PullRequest
0 голосов
/ 24 июня 2011

У меня 4 кнопки в матрице 2х2. пусть они будут b11 b12 b21 b22.

Я хочу выравнивание как

______________________________
|                            |
|         b11 b12            |
|         b21 b22            |
|____________________________|

, где правый край b11 и левый egde b12 соответствуют центру макета Правый край b21 соответствует правому краю b11, а левый край b22 соответствует левому краю b12

Ответы [ 3 ]

0 голосов
/ 24 июня 2011

Имейте в виду, что это не на 100% правильный код, просто идея, мне лень набирать android: layout_width и height 7 раз

<LinearLayout vertical>
 <LinearLayout Horizontal>
   <view layout_width="0px" weight="1"/>
   <view layout_width="0px" weight="1"/>
 </linearlayout>     
 <LinearLayout Horizontal>
   <view layout_width="0px" weight="1"/>
   <view layout_width="0px" weight="1"/>
 </linearlayout>
</LinearLayout>
0 голосов
/ 24 июня 2011

Попробуйте использовать это:

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

     <LinearLayout 
        android:id="@+id/linearLayout1" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center">
         <Button android:text="B11" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
        <Button android:text="B12" android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
        </LinearLayout> 

        <LinearLayout 
        android:id="@+id/linearLayout1" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center">
        <Button android:text="B21" android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
        <Button android:text="B22" android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>

        </LinearLayout>

    </LinearLayout>

Я думаю, это то, что вы хотите.

0 голосов
/ 24 июня 2011

Это волнообразно и без кода, но я бы создал LinearLayout, который содержит каждую строку из 2 кнопок.Установите гравитацию LinearLayout к центру, а ширину к wrap_content, затем присвойте кнопкам равную ширину.Повторите для второго ряда.

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