修改NavigationView的MenuItem的字体颜色并修改默认选中的item

原创 2016年05月31日 14:00:56

1.前言

NavigationView是android5.0以后引进的新控件,就是侧滑栏,但是策划栏MenuItem的字体颜色和默认选中项不是很好修改,经过我的摸索,发现字体颜色和默认选中项都是可以修改的。

2.xml文件

首先在res/color文件下创建一个selector文件navigation_menu_item_color.xml,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true"
        android:color="@color/colorAccent"></item> <!-- selected颜色 -->
    <item android:state_pressed="true"
        android:color="@color/colorAccent"/> <!-- pressed颜色 -->
    <item android:state_focused="true"
        android:color="@color/colorAccent"/> <!-- focused颜色 -->
    <item android:color="#FFFFFF"/> <!-- default颜色 -->

</selector> 

对应填充自己的颜色就可以了。

3.java代码

上面的做完后需要在java代码中区设置。

/**设置MenuItem的字体颜色**/
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);
        Resources resource=(Resources)getBaseContext().getResources();
        ColorStateList csl=(ColorStateList)resource.getColorStateList(R.color.navigation_menu_item_color);
navigationView.setItemTextColor(csl);
/**设置MenuItem默认选中项**/
navigationView.getMenu().getItem(0).setChecked(true);

4.效果

修改前:

修改前

修改后:

这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android MenuItem 设置文字颜色-TextColor的设置

前面一直在找 MenuItem的文字颜色的设置。我发现API中只有背景颜色的设置。。。所以找到下面的方法。在OverFlow上看到的。 在onCreateOptionsMenu中覆写一下。使MenuI...
  • u012565107
  • u012565107
  • 2014年04月22日 12:14
  • 7488

NavigationView菜单项增加分割线

给菜单项增加分割线是什么意思呢?看下图(图来源stackoverflow)在上述图片中我们可以清楚地看见每一项菜单项之间都有一个分割线,那这个该怎么实现呢?...
  • gu18168
  • gu18168
  • 2017年02月11日 19:12
  • 674

Android中的菜单显示风格

田海立2012-9-13 本文以IconMenu为例,看菜单显示风格。根据需求替换或更改相应的资源就可以定制菜单的风格。Keywords: Menu MenuItem Theme Style Colo...
  • thl789
  • thl789
  • 2012年09月13日 21:18
  • 7582

android 选中某栏时字体颜色改变,未选中则不变

目标:
  • zwx622
  • zwx622
  • 2014年09月10日 17:08
  • 562

更改NavigationView侧滑菜单文字颜色

如何更改NavigationView 或者各种menu里 文字和图标的颜色,而且不需要自定义太多东西,也不需要更改原生应用。...
  • qq_23089525
  • qq_23089525
  • 2016年10月09日 16:20
  • 1924

NavigationView更改菜单icon和title颜色变化效果

NavigationView menu默认icon和title会随着菜单状态改变而改变,选择某个菜单后再次打开侧边菜单后会发现该菜单的icon和title会变成应用的主颜色,其他菜单项仍然为黑色。...
  • duanyy1990
  • duanyy1990
  • 2016年06月13日 15:50
  • 9002

改NavigationView的MenuItem的字体颜色并修改默认选中的item

1.前言 NavigationView是android5.0以后引进的新控件,就是侧滑栏,但是策划栏MenuItem的字体颜色和默认选中项不是很好修改,经过我的摸索,发现字体颜色和默认选中项都是可以修...
  • wangkai1101
  • wangkai1101
  • 2016年08月17日 19:05
  • 4017

修改NavigationView的MenuItem的字体颜色并修改默认选中的item

from : http://blog.csdn.net/u010072711/article/details/51545193 1.前言 NavigationView是android5.0以后引进...
  • wuqilianga
  • wuqilianga
  • 2017年05月26日 18:07
  • 512

Android关于侧边栏的简单使用(drawerLayout,navigationview,动态添加menu)

目前市面上大部分app都有使用侧边栏,假如的app还没有该功能,该让你的产品经理加班了哦。。 一、侧边栏一般包括header和menu,header一般包括背景图、用户名等一些东东,切图如下 下面...
  • Leven_Martin
  • Leven_Martin
  • 2017年03月23日 17:24
  • 4448

Android5.0之NavigationView的使用

导航菜单的制作方式多种多样,网上也有各种炫酷效果的具体实现方式,那么今天我主要是想来说说Google在Android5.0之后推出的NavigationView的具体使用方式。NavigationVi...
  • u012702547
  • u012702547
  • 2016年04月26日 20:46
  • 57244
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:修改NavigationView的MenuItem的字体颜色并修改默认选中的item
举报原因:
原因补充:

(最多只允许输入30个字)