NavigationView与Menu

####NavigationView的样式

  • 最大宽度
<android.support.design.widget.NavigationView android:maxWidth="300dp" />
复制代码
  • Item的高度

<style name="ItemHeight">
	<item name="android:listPreferredItemHeightSmall">25dpitem>
style>


<style name="ItemHeight">
	<item name="listPreferredItemHeightSmall">25dpitem>
style>

<android.support.design.widget.NavigationView app:theme="@style/ItemHeight" />

复制代码
  • 图标颜色

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true" android:color="@color/color1"/>
    <item android:color="@color/color2" />
selector>

<android.support.design.widget.NavigationView app:itemIconTint="@drawable/color_set" />

复制代码
  • Item字体颜色
<android.support.design.widget.NavigationView app:itemTextColor="@color/text_color" />
复制代码
  • Item字体样式
<android.support.design.widget.NavigationView app:itemTextAppearance="@style/text" />
复制代码
  • item背景
<android.support.design.widget.NavigationView app:itemBackground="@color/background" />
复制代码

NavigationView与ActionView

从API 23起,NavigationView的MenuItem支持ActionView。 1.定义ActionView的布局文件layout/action_view.xml。

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
复制代码

2.在菜单文件menu/drawer_menu中给MenuItem添加ActionView。

<item app:actionLayout="@layout/action_view" />
复制代码

或者在代码中设置

TextView textView = new TextView(getActivity());
MenuItemCompat.setActionView(item, textView);
复制代码

3.设置ActionView。

TextView view = (TextView) navigationView.getMenu().findItem(itemId).getActionView();
view.setText(...);
复制代码

你可能感兴趣的:(NavigationView与Menu)