BottomNavigationView的使用

BottomNavigationView的使用

第一次使用BottomNavigationView

第一次使用BottomNavigationView,记下我摸爬滚打后的经验。

基础使用

1.先在activity_main.xml界面直接拖进BottomNavigationView,我第一次用所以会提示是否导入包,点ok后会自动导入。
在这里插入图片描述
2.在res处创建文件夹,再添加一个xml文件
在这里插入图片描述

resource type选择menu在这里插入图片描述

在这里插入图片描述在这里插入图片描述
3.menu.xml里写底部菜单的样子,这里的代码是复制的,因为我自己的不太方便展示
https://www.jianshu.com/p/0ba25cc65889

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/item_news"
        android:icon="@mipmap/ic_news_gray"
        android:title="新闻" />
    <item
        android:id="@+id/item_lib"
        android:icon="@mipmap/ic_library_gray"
        android:title="图书" />
    <item
        android:id="@+id/item_find"
        android:icon="@mipmap/ic_discovery_gray"
        android:title="发现" />
    <item
        android:id="@+id/item_more"
        android:icon="@mipmap/ic_more_gray"
        android:title="更多" />
</menu>

4.接着布局文件的代码这样写,也是上面那篇博文里的

<android.support.v4.view.ViewPager
    android:id="@+id/viewpager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/bottom_navigation" />

<android.support.design.widget.BottomNavigationView
    android:id="@+id/bottom_navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" 
   android:layout_alignParentBottom="true" 
   app:itemIconTint="@drawable/bottom_navigation_selector"
   app:itemTextColor="@drawable/bottom_navigation_selector"
   app:menu="@menu/menu_bottom_navigation" />

<View
    android:layout_width="match_parent"
    android:layout_height="5dp"
    android:layout_above="@id/bottom_navigation"
    android:background="@drawable/bottom_shadow" />

其中这些部分会报红
在这里插入图片描述
5.这里需要用到ColorStateList,这里写的表示图标被选中时的颜色。ColorStateList的使用看这篇博文就很好
https://blog.csdn.net/zjh_1110120/article/details/89438309
这里我的是这么设置的
在这里插入图片描述
6.接下来需要设置监听,我用的是fragment+viewpager实现,参照的是这篇博文
链接:https://blog.csdn.net/tensixchuan/article/details/84752885
超级nice这篇,我跟着一步步完成了fragment+viewpager的部分。中间报了一次错,是在创建fragment的时候。解决方法是在build.gradle里注释掉implementation ‘com.android.support:support-v4:30.+’。这句话是创建fragment的时候它自动添加的。
后面就没什么问题了,顺理完成,祝大家也成功(-:
在这里插入图片描述


版权声明:本文为qq_44298895原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。