2016-07-06 61 views
0

我试图分开垂直视图之间的空间均匀使用layout_weight,但由于某些原因,它不起作用。我跟着this answer仍然意见的空间不受影响。我究竟做错了什么?layout_weight不生效

<LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="vertical"> 

       <Space 
        android:layout_width="1dp" 
        android:layout_height="0dp" 
        android:layout_weight="1" > 
       </Space> 

       <android.support.design.widget.TextInputLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"> 

        <AutoCompleteTextView 
         android:background="@drawable/rounded_corners_white" 
         android:id="@+id/email" 
         android:paddingEnd="16dp" 
         android:paddingStart="16dp" 
         android:layout_marginRight="16dp" 
         android:layout_marginLeft="16dp" 
         android:layout_height="40dp" 
         android:layout_width="match_parent" 
         android:inputType="textEmailAddress" 
         android:maxLines="1" 
         android:singleLine="true" /> 

       </android.support.design.widget.TextInputLayout> 

       <Space 
        android:layout_width="1dp" 
        android:layout_height="0dp" 
        android:layout_weight="1" > 
       </Space> 

       <android.support.design.widget.TextInputLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"> 

       <EditText 
        android:id="@+id/password" 
        android:layout_width="match_parent" 
        android:layout_marginRight="16dp" 
        android:layout_marginLeft="16dp" 
        android:paddingEnd="16dp" 
        android:paddingStart="16dp" 
        android:layout_height="40dp" 
        android:background="@drawable/rounded_corners_white" 
        android:imeActionId="@+id/login" 
        android:imeActionLabel="@string/action_sign_in_short" 
        android:imeOptions="actionUnspecified" 
        android:inputType="textPassword" 
        android:maxLines="1" 
        android:singleLine="true" /> 
       </android.support.design.widget.TextInputLayout> 

       <Space 
        android:layout_width="1dp" 
        android:layout_height="0dp" 
        android:layout_weight="1" > 
       </Space> 

       <View 
        android:layout_marginTop="30dp" 
        android:layout_marginBottom="30dp" 
        android:layout_marginRight="15dp" 
        android:layout_marginLeft="15dp" 
        android:layout_width="match_parent" 
        android:layout_height="3dp" 
        android:background="@drawable/rounded_corners_white" /> 

       <Space 
        android:layout_width="1dp" 
        android:layout_height="0dp" 
        android:layout_weight="1" > 
       </Space> 

       <Button 
        android:id="@+id/sign_in_button" 
        android:layout_width="match_parent" 
        android:layout_height="40dp" 
        android:layout_marginRight="16dp" 
        android:layout_marginLeft="16dp" 
        style="?android:textAppearanceSmall"/> 
      </LinearLayout> 

UPDATE: 如果不显示图像(http://i.stack.imgur.com/MQaLm.png) [graphic explanation

+1

你可以把你想发展你的屏幕截图? –

+0

请进一步解释你正在努力完成什么,以及什么不按预期工作。从我的描述中可以看出,这种布局会做你想做的。 –

+0

这就是布局所要做的。你在顶部有一个空间,每个'视图'之间有一个空间,它们都是相等的高度。要检查,你可以暂时将''改为'',将它们的'layout_width'设置为'match_parent',并给它们'背景'颜色。顺便说一句,我认为你的意思是垂直空间。 –

回答

-1

低于线只需添加到您的LinearLayout:

android:weightSum="4"