2013-07-20 38 views
1

喜,所以我已經找到了很多鏈接的空間如何按鈕evently水平,我期待在垂直方向做,所以更有耐力均勻分佈的,而不是所有揉成 想:空間按鈕進行均勻水平的Android

--------------- 
|    | 
| button 1 | 
|    | 
| button 2 | 
|    | 
| button 3 | 
|    | 
--------------- 

我得到:

--------------- 
|    | 
| button 1 | 
| button 2 | 
| button 3 | 
|    | 
|    | 
|    | 
--------------- 

這裏是我的代碼:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:fillViewport="true"> 
    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:background="#fff"> 

    <LinearLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:padding="10dip" 
     android:layout_alignParentLeft="true" 
     android:layout_marginLeft="8dp" 
     android:layout_alignParentTop="true" 
     android:layout_marginTop="25dp" 
     android:layout_above="@+id/footer"> 
     <!-- Send Ticket Button --> 
     <Button android:id="@+id/sendTicketButton" 
       android:background="@drawable/bluebutton" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="10dip" 
       android:isScrollContainer="false" 
       android:padding="20dp" 
       android:onClick="onClickSendTickets" 
       style="@style/ButtonText" 
       android:text="Send Ticket/s" 
       android:layout_gravity="center"/> 
     <!-- Manage Events Button --> 
     <Button android:id="@+id/manageEventsButton" 
       android:background="@drawable/bluebutton" 
       android:layout_width="fill_parent" 
       android:padding="20dp" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="10dip" 
       android:isScrollContainer="false" 
       android:onClick="onClickManageEvents" 
       android:text="Manage Events" 
       style="@style/ButtonText" 
       android:layout_gravity="center"/> 
     <!-- Finance Button --> 
     <Button android:id="@+id/financeButton" 
       android:background="@drawable/bluebutton" 
       android:layout_width="fill_parent" 
       android:padding="20dp" 
       android:layout_height="wrap_content" 
       android:isScrollContainer="false" 
       android:gravity="center" 
       android:onClick="onClickFinance" 
       android:text="View Finances" 
       style="@style/ButtonText" 
       android:layout_gravity="center" 
       android:layout_alignParentRight="true" 
       android:layout_alignParentTop="true" 
       android:layout_marginTop="131dp"/> 

    </LinearLayout> 
    <!-- Registration Form Ends --> 
</RelativeLayout> 
</ScrollView> 
+0

您的'財務按鈕'屬性'layout_alightParentRight'和'layout_alightParentTop'不適用於這個視圖,因爲它的父類是'LinearLayout'。檢查日食的警告符號和他們說什麼。 – Vikram

+0

@vikram不使用ecplise,但歡呼聲沒有選擇那個錯誤! – cxzp

回答

2

有幾種方法可以解決這個問題,這取決於你想怎麼做。也許簡單的做法是在每個其他視圖之間輸入空的間隔視圖,並賦予它們相同的權重,這意味着所有內容都將以相同的大小結束。您的這種佈局會看起來像:

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="0px" 
     android:layout_weight="1" /> 
    <View 
     android:layout_width="match_parent" 
     android:layout_height="0px" 
     android:layout_weight="1" /> 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="0px" 
     android:layout_weight="1" /> 
    <View 
     android:layout_width="match_parent" 
     android:layout_height="0px" 
     android:layout_weight="1" /> 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="0px" 
     android:layout_weight="1" /> 
</LinearLayout> 

如果您不需要它們佔用的垂直空間所提供的全部金額,您可以使用layout_marginTop參數前兩個,然後就空間出來那樣。

+0

乾杯空視圖做到了 – cxzp

0

添加android:layout_weight="1"每個按鈕和它們

之間

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:padding="10dip" 
    android:layout_alignParentLeft="true" 
    android:layout_marginLeft="8dp" 
    android:layout_alignParentTop="true" 
    android:layout_marginTop="25dp" 
    android:layout_above="@+id/footer"> 
    <!-- Send Ticket Button --> 
    <Button android:id="@+id/sendTicketButton" 
      android:background="@drawable/bluebutton" 
      android:layout_width="fill_parent" 
      android:layout_weight="1" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="10dip" 
      android:isScrollContainer="false" 
      android:padding="20dp" 
      android:onClick="onClickSendTickets" 
      style="@style/ButtonText" 
      android:text="Send Ticket/s" 
      android:layout_gravity="center"/> 
    <!-- Manage Events Button --> 
    <View 
    android:layout_width="match_parent" 
    android:layout_height="0px" 
    android:layout_weight="1" /> 
    <Button android:id="@+id/manageEventsButton" 
      android:background="@drawable/bluebutton" 
      android:layout_width="fill_parent" 
      android:layout_weight="1" 
      android:padding="20dp" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="10dip" 
      android:isScrollContainer="false" 
      android:onClick="onClickManageEvents" 
      android:text="Manage Events" 
      style="@style/ButtonText" 
      android:layout_gravity="center"/> 
    <View 
    android:layout_width="match_parent" 
    android:layout_height="0px" 
    android:layout_weight="1" /> 
    <!-- Finance Button --> 
    <Button android:id="@+id/financeButton" 
      android:background="@drawable/bluebutton" 
      android:layout_width="fill_parent" 
      android:layout_weight="1" 
      android:padding="20dp" 
      android:layout_height="wrap_content" 
      android:isScrollContainer="false" 
      android:gravity="center" 
      android:onClick="onClickFinance" 
      android:text="View Finances" 
      style="@style/ButtonText" 
      android:layout_gravity="center" 
      android:layout_alignParentRight="true" 
      android:layout_alignParentTop="true" 
      android:layout_marginTop="131dp"/> 

</LinearLayout> 
這將使你想你想添加 Views