如何针对底部导航栏菜单项设置弹出菜单?
How can I set a popup menu against a bottom navigation bar menu item?
我已经在我的项目中添加了一个底部导航栏,如下所示。
BottomNavigationView bottomNavigationView=
(BottomNavigationView)findViewById(R.id.navigationbar);
pass.disableShiftMode(bottomNavigationView);
bottomNavigationView.setSelectedItemId(R.id.navigationbar);
final Menu menu = bottomNavigationView.getMenu();
MenuItem menuItem = menu.getItem(0);
menuItem.setChecked(true);
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()){
case R.id.home:
break;
case R.id.categories:
Intent intent1 = new Intent(MainActivity.this, category.class);
startActivity(intent1);
break;
case R.id.more:
Intent itent6=new Intent(MainActivity.this,more.class);
startActivity(itent6);
break;
case R.id.account:
Intent intent3 = new Intent(MainActivity.this, profile.class);
startActivity(intent3);
break;
case R.id.cart:
Intent intent4 = new Intent(MainActivity.this, cart.class);
startActivity(intent4);
break;
}
return false;
}
});
我想在我们点击带有 id R.id.more 的菜单项时添加一个弹出菜单。
我尝试了几种方法,但在大多数情况下,我收到一条错误消息,提示未找到锚点。
在其他情况下,弹出窗口根本不显示。
这可能对您有所帮助。
case R.id.more:
PopupMenu popup = new PopupMenu(MainActivity.this, findViewById(R.id.more));
MenuInflater inflater = popup.getMenuInflater();
inflater.inflate(R.menu.mymenu, popup.getMenu());
popup.show();
/*Intent itent6=new Intent(MainActivity.this,more.class);
startActivity(itent6);*/
break;
我已经在我的项目中添加了一个底部导航栏,如下所示。
BottomNavigationView bottomNavigationView=
(BottomNavigationView)findViewById(R.id.navigationbar);
pass.disableShiftMode(bottomNavigationView);
bottomNavigationView.setSelectedItemId(R.id.navigationbar);
final Menu menu = bottomNavigationView.getMenu();
MenuItem menuItem = menu.getItem(0);
menuItem.setChecked(true);
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()){
case R.id.home:
break;
case R.id.categories:
Intent intent1 = new Intent(MainActivity.this, category.class);
startActivity(intent1);
break;
case R.id.more:
Intent itent6=new Intent(MainActivity.this,more.class);
startActivity(itent6);
break;
case R.id.account:
Intent intent3 = new Intent(MainActivity.this, profile.class);
startActivity(intent3);
break;
case R.id.cart:
Intent intent4 = new Intent(MainActivity.this, cart.class);
startActivity(intent4);
break;
}
return false;
}
});
我想在我们点击带有 id R.id.more 的菜单项时添加一个弹出菜单。 我尝试了几种方法,但在大多数情况下,我收到一条错误消息,提示未找到锚点。 在其他情况下,弹出窗口根本不显示。
这可能对您有所帮助。
case R.id.more:
PopupMenu popup = new PopupMenu(MainActivity.this, findViewById(R.id.more));
MenuInflater inflater = popup.getMenuInflater();
inflater.inflate(R.menu.mymenu, popup.getMenu());
popup.show();
/*Intent itent6=new Intent(MainActivity.this,more.class);
startActivity(itent6);*/
break;