我有一个带有按钮列表的线性布局,大小约为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>