DrawerLayout和NavigationView使用心得

DrawerLayout和NavigationView使用心得

这是在开发过程中遇到的问题,网上一直没找到很好的解决办法,所以分享出来帮助大家过坑:
用AS的朋友应该都知道,新建项目的时候可以建立一个NavigationDrawerActivity的项目,建立好以后是可以直接运行的,但是如果想在这个基础上去进一步开发的话,会报这个错误
这里写图片描述
经过多次排查,后来发现是NavigationView的heaeview不能直接在布局文件里面加载,而应该在用代码来加载,代码如下

NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);

headview = LayoutInflater.from(this).inflate(R.layout.view_global_menu_header, null);//填充头像布局
navigationView.addHeaderView(headview);

然后第二个问题是,NavigationView的item每次点开都会有一个默认的选中背景,这个背景比较难看
这里写图片描述
去掉的办法只要把item的setCheckable设置为false就行 代码如下

 @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        item.setCheckable(false);
        int id = item.getItemId();
        ...
        return true;
    }

其他更多用法可以参考下面的链接
http://blog.csdn.net/u012702547/article/details/51253222

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值