我无法将视图设置为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>
答案 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>