是否可以在Android中更改NavigationView的宽度?

时间:2017-01-07 18:41:21

标签: android android-navigationview

我有一个带有按钮列表的线性布局,大小约为50dp。我试图将此布局添加为导航标题。我试图从导航抽屉中删除默认列表视图,并在headerLayout中添加我的自定义布局(是的,我是一个Android菜鸟)。但是,即使设置了layout_width="wrap_content",导航栏的宽度也不会使宽度减少超过整个视图的一半。
我搜索了互联网,但没有相关信息。那么,是否可以减小宽度。如何将自定义布局设置为导航栏?
修改
以下是我所做的主要更改:
导航视图布局

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/custom_nav_bar"/>

custom_nav_bar.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent">
    <include
        layout="@layout/side_bar"
        android:id="@+id/side_bar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />
</RelativeLayout>

side_bar.xml

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

    <ScrollView
        android:layout_width="wrap_content"
        android:layout_height="match_parent">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:background="@color/black"
            android:animateLayoutChanges="true">

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_action_home"
                android:id="@+id/homeImgBtn"
                android:background="@color/black"
                android:padding="@dimen/activity_horizontal_margin"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="2dp"
                android:orientation="horizontal"
                android:id="@+id/homeSelectBar"
                android:background="@color/colorAccent"/>

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_action_calender"
                android:id="@+id/calenderImgBtn"
                android:background="@color/black"
                android:padding="@dimen/activity_horizontal_margin"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="2dp"
                android:orientation="horizontal"
                android:id="@+id/eventSelectBar"
                android:background="@color/colorAccent"/>

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_action_controller"
                android:id="@+id/controllerImgBtn"
                android:background="@color/black"
                android:padding="@dimen/activity_horizontal_margin"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="2dp"
                android:orientation="horizontal"
                android:id="@+id/controllerSelectBar"
                android:background="@color/colorAccent"/>

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_action_email"
                android:id="@+id/emailImgBtn"
                android:background="@color/black"
                android:padding="@dimen/activity_horizontal_margin"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="2dp"
                android:orientation="horizontal"
                android:id="@+id/contactSelectBar"
                android:background="@color/colorAccent"/>

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_action_dev"
                android:id="@+id/devImgBtn"
                android:background="@color/black"
                android:padding="@dimen/activity_horizontal_margin"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="2dp"
                android:orientation="horizontal"
                android:id="@+id/devSelectBar"
                android:background="@color/colorAccent"/>
        </LinearLayout>
    </ScrollView>
</LinearLayout>

0 个答案:

没有答案