返回顶部
首页 > 资讯 > 移动开发 >android中NavigationView(导航抽屉)
  • 115
分享到

android中NavigationView(导航抽屉)

抽屉Android 2022-06-06 13:06:33 115人浏览 薄情痞子
摘要

效果演示 演示 NavigationView的布局文

效果演示

演示


NavigationView的布局文件

下面才是关键
1、app:headerLayout="@layout/layout_navigation_header"
这条代码的作用就是设置导航抽屉的样子


2、app:menu="@menu/navigation_main"
这条代码的作用是设置导航抽屉中每个Item




之后就是在Activity中具体引用了


    private void initNavigationView() {
        mNavigationView.setNavigationItemSelectedListener(this);
        View headerView = mNavigationView.getHeaderView(0);
        CircleImageView mUserAvatarView = (CircleImageView) headerView.findViewById(R.id.user_avatar_view);
        TextView mUserName = (TextView) headerView.findViewById(R.id.user_name);
        TextView mUserLevel = (TextView) headerView.findViewById(R.id.user_level);
        String name = getSharedPreferences("user", MODE_PRIVATE).getString("username", "听雨喧");
        userLevel = DbUtil.getUserLevel(this, name);
        mUserLevel.setText("LV"+ userLevel);
        //设置名字
        mUserName.setText(name);
    }

    @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        switch (item.getItemId()){
            case R.id.item_exit:
                //切换帐号
                getSharedPreferences("user", MODE_PRIVATE).edit().putString("username","").commit();
                startActivity(new Intent(this,LoginActivity.class));
                finish();
                break;
                //主页
            case R.id.item_home:
                toggleDrawer();
                changeFragmentIndex(item, 0);
                boolean update = getSharedPreferences("book", MODE_PRIVATE).getBoolean("update", false);
                //System.out.println("-0-----------------dianjile--item_home:"+update);
                if(update){
                    homeFragment.reFreshData();
                }
                break;
                //管理界面
            case R.id.item_manager:
                toggleDrawer();
                if(userLevel<2){
                    ToastUtil.showLong(this,"抱歉,只有管理员才能进入");
                }else {
                    changeFragmentIndex(item, 1);
                }
                break;
                //收藏图书界面
            case R.id.item_favourite:
                toggleDrawer();
                changeFragmentIndex(item, 2);
                break;
                //设置界面
            case R.id.item_settings:
                toggleDrawer();
                changeFragmentIndex(item,3);
                break;
            case R.id.item_history:
                toggleDrawer();
                changeFragmentIndex(item, 4);
                break;
            case R.id.item_serach:
                toggleDrawer();
                changeFragmentIndex(item,5);
                break;
        }
        return false;
    }

作者:spark无与伦比


--结束END--

本文标题: android中NavigationView(导航抽屉)

本文链接: https://lsjlt.com/news/29564.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作