2013-07-20 43 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