android-bottomNavigationView底部导航栏

今天用bottomNavigationView+fragment来实现一个普通的底部切换布局。如下效果
在这里插入图片描述

一、先来一个简单布局,一个fragment和一个bottomnavigationview

如下:在这里插入图片描述
在这里插入图片描述

二、需要一个menu菜单,我们来实现,方法和实现导航栏菜单一样,可参考以前的内容(这里只新添了一个icon)

在这里插入图片描述
代码如下:
(图片自己找哦)

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/second_bottomnavigation_home"
        android:icon="@drawable/unhome"
        android:title="首页" />
    <item
        android:id="@+id/second_bottomnavigation_news"
        android:icon="@drawable/news"
        android:title="新闻" />
    <item
        android:id="@+id/second_bottomnavigation_photo"
        android:icon="@drawable/photo"
        android:title="图片" />
    <item
        android:id="@+id/second_bottomnavigation_my"
        android:icon="@drawable/my"
        android:title="我的" />
</menu>

导航栏就出来了在这里插入图片描述

三、实现点击切换fragment。(fragment不多述,可参考以前的文章)

初始化控件抽取为全局变量

private void initUI() {
    
    
//        初始化控件
        second_bottomnavigation = findViewById(R.id.second_bottomnavigation);
    }

通过setOnNavigationItemSelectedListener来监听她的状态,
通过item得到id来控制切换,代码如下。

   private void Listener() {
    
    
//        点击事件
        second_bottomnavigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
    
    
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {
    
    
                switch (item.getItemId()){
    
    
                    case R.id.second_bottomnavigation_home:
                        break;
                    case R.id.second_bottomnavigation_news:
                        break;
                    case R.id.second_bottomnavigation_photo:
                        break;
                    case R.id.second_bottomnavigation_my:
                        break;
                }
                return true;
            }
        });
    }

然后在点击事件里添加fragment的切换状态就行啦
傻瓜式的提醒:一定要返回true哦
在这里插入图片描述

首尾呼应,看效果-(´∀`; )

在这里插入图片描述
ps:主题颜色自己更改,我将顶部导航栏去了
PS:该文运用了引用说明的手法····嘿嘿

猜你喜欢

转载自blog.csdn.net/Willow_Spring/article/details/112701455