# 正常显示底部导航栏文字与图片
当底部的item大于三个时,出现图片不显示,或者是只显示当前item的文字而没有图片,需要在BottomNavigationView中加入如下代码:
app:labelVisibilityMode="labeled"
# 取消点击后item背景中的水波纹效果
app:itemRippleColor="@null"
取消item长按后显示的toast信息
大概如上图所示。 解决方法:
//取消BottomNavigationView子item长按显示的Toast
List<Integer> childIds = new ArrayList<>();
childIds.add(R.id.home);
childIds.add(R.id.recommend);
childIds.add(R.id.red_packet);
childIds.add(R.id.search);
ViewGroup childAt = (ViewGroup) mNavigationView.getChildAt(0);
for(int position = 0;position<childIds.size();position++){
BottomNavigationItemView viewById = childAt.getChildAt(position).findViewById(childIds.get(position));
viewById.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
return true;
}
});
}
大概意思是为BottomNavigationView的每个item设置长点击事件,将其返回true