Android日常开发(36)BottomNavigationView 实现底部导航
程序员文章站
2022-03-29 20:15:51
前言一般我们实现底部导航都是采用,自定义View的方式来实现的,今天我们使用Google为我们提供的BottomNavigationView来实现这个功能。首先引入依赖api 'com.android.support:design:28.0.0'在布局中写入我们的BottomNavigationView UI组件
前言
一般我们实现底部导航都是采用,自定义View的方式来实现的,今天我们使用Google为我们提供的BottomNavigationView来实现这个功能。
首先引入依赖
api 'com.android.support:design:28.0.0'
在布局中写入我们的BottomNavigationView UI组件
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottomNavigationView"
android:layout_width="match_parent"
app:menu="@menu/nav_menu"
app:labelVisibilityMode="labeled"
app:itemTextColor="@color/navigation_text_color"
app:itemHorizontalTranslationEnabled="false"
app:itemBackground="@null"
android:layout_alignParentBottom="true"
android:layout_height="60dp">
</android.support.design.widget.BottomNavigationView>
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_add"
android:icon="@drawable/tab_main_selector"
android:title="@string/main_shequ"/>
<item
android:id="@+id/menu_add1"
android:icon="@drawable/tab_kind_selector"
android:title="@string/main_jiaoyou"/>
<item
android:id="@+id/menu_add2"
android:icon="@drawable/tab_cart_selector"
android:title="@string/main_xiaoxi"/>
<item
android:id="@+id/menu_add3"
android:icon="@drawable/tab_mine_selector"
android:title="@string/main_wo"/>
</menu>
认识几个属性
app:menu="@menu/nav_menu"
配置我们底部导航所要陈列的信息
app:labelVisibilityMode="labeled"
显示我们的底部文案信息
app:itemTextColor="@color/navigation_text_color"
为底部文字配置显示的字体颜色
app:itemIconTint="@color/navigation_text_color"
为导航的icon着色,如果不设置,则默认使用主题色着色
app:itemHorizontalTranslationEnabled="false"
true 开启水平位移效果,false 禁用水平位移效果,默认为true
app:itemBackground="@null"
去除水波纹效果办法,普通app都没有使用android的这个水波纹效果
BottomNavigationView { bottomNavigationView.setItemIconTintList(null);}
去除底部icon默认着色效果
<dimen tools:override="true" name="design_bottom_navigation_text_size">12sp</dimen>
<!-- text大小 -->
<dimen tools:override="true" name="design_bottom_navigation_active_text_size">12sp</dimen>
字体向上缩放效果移除,通过设置选中和未选中时的字体大小,(无需反射!!!)
<dimen tools:override="true" name="design_bottom_navigation_margin">10dp</dimen>
<!-- 导航栏高度 -->
<dimen tools:override="true" name="design_bottom_navigation_height">84dp</dimen>
设置导航栏高度和间距
api 'q.rorbin:badgeview:1.1.3'
itemhome= navigation.findViewById(R.id.menu_add);
badge1=new QBadgeView(this).bindTarget(itemhome)
.setShowShadow(true)
.setBadgeGravity(Gravity.END|Gravity.TOP)
.setOnDragStateChangedListener(newBadge.OnDragStateChangedListener() {
@Override
public voidonDragStateChanged(intdragState, Badge badge, View targetView) {
}
})
.setBadgeNumber(1);
设置数字角标
结束语
以上是我对BottomNavigationView的使用总结,如果帮到你,请点个赞谢谢
本文地址:https://blog.csdn.net/ZPCrobot/article/details/107200443
上一篇: Uedior上传大文件超时报错
下一篇: 初学入门vue
推荐阅读