BottomNavigationView
是 Android 平台上的一个视图组件,通常用于在底部显示几个导航选项卡。用户可以通过点击不同的选项卡在不同的页面之间切换。
BottomNavigationView
主要有以下几种类型:
适用于需要底部导航栏的应用,如新闻应用、社交媒体应用、电商应用等。
要在 BottomNavigationView
中以编程方式设置选定项的背景色,可以使用以下方法:
setSelectedItemId
BottomNavigationView bottomNavigationView = findViewById(R.id.bottom_navigation);
bottomNavigationView.setSelectedItemId(R.id.item_id);
然后通过自定义 BottomNavigationMenuView
来设置选中项的背景色:
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.item_id:
setItemBackground(item, Color.RED);
break;
// 其他选项卡的处理
}
return true;
}
});
private void setItemBackground(MenuItem item, int color) {
BottomNavigationMenuView menuView = (BottomNavigationMenuView) bottomNavigationView.getChildAt(0);
View itemView = menuView.getChildAt(menuView.indexOfChild((View) item.getActionView()));
itemView.setBackgroundColor(color);
}
setItemBackgroundResource
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.item_id:
item.setCheckable(true);
item.setChecked(true);
bottomNavigationView.setItemBackgroundResource(R.color.selected_color);
break;
// 其他选项卡的处理
}
return true;
}
});
通过以上方法,你可以根据需要设置 BottomNavigationView
中选定项的背景色。
领取专属 10元无门槛券
手把手带您无忧上云