如何设置layout_gravity中心以在DrawerLayout中的LinearLayout中查看

时间:2016-11-07 06:32:18

标签: android android-linearlayout center drawerlayout

我无法将视图设置为DrawerLayout中心。 DrawerLayout设置为left。我想将内部视图设置为居中,但它们总是朝左边布局。我怎么能做到请帮忙。非常感谢。这是布局xml。

main_layout.xml     

 <!--<android.support.v4.widget.DrawerLayout--> 
    <LinearLayout
         xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:id="@+id/drawer_layout"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:orientation="vertical"
     >

 <include layout="@layout/custom_toolbar"/>

 <android.support.v4.widget.DrawerLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         >
     <!-- The main content view -->
     <FrameLayout
                 android:id="@+id/container"
             android:layout_width="match_parent"
             android:layout_height="match_parent" />

     <fragment
             android:id="@+id/navigation_drawer"
         android:layout_width="240dp"
         android:layout_height="match_parent"
         android:layout_marginLeft="-64dp"
         android:layout_gravity="start"
         android:name="com.onandroid.hplus.ui.navigationdrawer.NavigationDrawerFragment"
         tools:layout="@layout/form_new" />

     </android.support.v4.widget.DrawerLayout> 
</LinearLayout>

form_add.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="240dp"
 android:layout_height="match_parent"
 android:orientation="vertical"
 android:layout_gravity="center"
 >

 <EditText
         android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:id="@+id/et_device_code"
     android:textColorHint="@color/text"
     android:drawableLeft="@drawable/ic_bar_code_white_24"
     android:drawableRight="@mipmap/ic_action_refresh"
     android:enabled="false"
     android:layout_gravity="center_horizontal"
     />
 <EditText
         android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:id="@+id/et_device_locale"
     android:layout_gravity="center"
     android:textColorHint="@color/text"
     android:drawableLeft="@drawable/ic_location_white_24"
     />
 <EditText
         android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:id="@+id/et_device_name"
     android:layout_gravity="center"
     android:textColorHint="@color/text"
     android:drawableLeft="@drawable/ic_abc_white_24"
     />
    <LinearLayout
        android:layout_width="200dp"
        android:layout_height="wrap_content">
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:id="@+id/bt_form_ok"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:id="@+id/bt_form_cancle"/>
    </LinearLayout>
 </LinearLayout>

1 个答案:

答案 0 :(得分:0)

好吧,我想通了,但是很难看。请看看我是否遗漏了什么。 这里的问题是片段NavigationDrawerFragment中的LinearLayout的属性(layout_width,layout_height,layout_gravity)没有任何效果,它们只是从片段的父视图布局中引入。 所以我必须具体设置LinearLayout中的widges属性(layout_width,layout_height,layout_gravity)。片段的子布局如下。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="240dp"
 android:layout_height="match_parent"
 android:orientation="vertical"
 android:layout_gravity="center"
 >

 <EditText
         android:layout_width="200dp"
     android:layout_height="wrap_content"
     android:layout_gravity="center"
     android:id="@+id/et_device_code"
     android:textColorHint="@color/text"
     android:drawableLeft="@drawable/ic_bar_code_white_24"
     android:drawableRight="@mipmap/ic_action_refresh"
     android:enabled="false"
     android:layout_gravity="center_horizontal"
     />
 <EditText
         android:layout_width="200dp"
     android:layout_height="wrap_content"
     android:layout_gravity="center"
     android:id="@+id/et_device_locale"
     android:layout_gravity="center"
     android:textColorHint="@color/text"
     android:drawableLeft="@drawable/ic_location_white_24"
     />
 <EditText
         android:layout_width="200dp"
     android:layout_height="wrap_content"
     android:layout_gravity="center"
     android:id="@+id/et_device_name"
     android:layout_gravity="center"
     android:textColorHint="@color/text"
     android:drawableLeft="@drawable/ic_abc_white_24"
     />
    <LinearLayout
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center">
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:id="@+id/bt_form_ok"/>
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:id="@+id/bt_form_cancle"/>
    </LinearLayout>
 </LinearLayout>