如何在不使用任何自定义视图或库的情况下制作底部导航视图徽章以覆盖项目图标?



我在BottomNavigationView物品上有一个徽章,但它显示在项目图标之外。我希望它与右上角的项目图标重叠。

访问这些网址

https://youtu.be/UyHd75_tUiI

显示项目

https://github.com/axarlotwala/CafeDelear

这些代码适用于底部通知徽章

BottomNavigationMenuView menuView = 
(BottomNavigationMenuView) navigation.getChildAt(0);
View view = menuView.getChildAt(1);
BottomNavigationItemView itemView = 
(BottomNavigationItemView) view;
View badge = 
LayoutInflater
.from(this)
.inflate(R.layout.notification_badge,itemView,true);
tvCount = badge.findViewById(R.id.tvCount);
tvCount.setText("0");

所以这是你的解决方案:

这是为了创建或设置导航项的徽章:

// 'nav_view' the id of your BottomNavigationView    
nav_view.getOrCreateBadge(R.id.navigation_history).number = 10

这是为了设置您的徽章重力:

nav_view.getOrCreateBadge(R.id.navigation_history).badgeGravity = BadgeDrawable.TOP_START 
// you can also use BadgeDrawable.TOP_UP and BadgeDrawable.BOTTOM_END 
// as BadgeDrawable.TOP_END is the default gravity.

希望是有帮助的,让我知道。

最新更新