我已经在我的应用程序中实现了BottomAppBar。 紧随本文Implementing BottomAppBar menu and Navigation drawer Control
一切正常,但问题是导航抽屉项没有显示Toast或其他内容。总之,它不会获得任何点击。 这是我的源代码Github
我还在onNavigationItemSelectedListener中尝试了Log.d,但它也没有向Logcat显示任何内容。
答案 0 :(得分:0)
您可以看以下示例。希望它对您有用:
答案 1 :(得分:0)
尝试手动设置MenuItem ClickListener,看看它是否对您有用。
BottomAppBar bar = (BottomAppBar) findViewById(R.id.bar);
bar.setOnMenuItemClickListener(new OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
// Handle actions based on the menu item
return true;
}
});
答案 2 :(得分:0)
NavigationView
属于BottomNavigationDrawerFragment
,
您应该在下面的片段BottomNavigationDrawerFragment
类中进行操作:
navigationView.setNavigationItemSelectedListener(new OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.navigation_item1:
...
break;
case R.id.navigation_item2:
...
break;
case R.id.navigation_item3:
...
break;
default:
...
break;
return true;
}
});
您还需要分片获取navigationView
。
已编辑:
片段中:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.your_fragment_layout,
container, false);
NavigationView navigationView = (NavigationView )view.findViewById(.....);
navigationView.setNavigationItemSelectedListener(
....
return view;
}