我正在尝试实现导航抽屉,并且我一直在逐步遵循https://developer.android.com/training/implementing-navigation/nav-drawer#java。唯一的区别是,我是在片段中实现所有内容,而不是直接在活动中实现。
根据文档的要求,我创建了一个工具栏,并在onCreateView内实现了“主页”按钮:
Toolbar toolbar = rootView.findViewById(R.id.toolbar);
((AppCompatActivity)getActivity()).setSupportActionBar(toolbar);
ActionBar actionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setHomeAsUpIndicator(R.drawable.ic_menu_black_24dp);
现在的问题是,当按下主屏幕按钮时,根本不会调用onOptionsItemSelected。以下是我重写onOptionsItemSelected的方法:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
//mDrawerLayout.openDrawer(GravityCompat.START);
Timber.d("Home Button Pressed");
mDrawerLayout.openDrawer(GravityCompat.START, true);
return true;
}
return super.onOptionsItemSelected(item);
}
谁能告诉我出什么问题了?如果您想查看我其余的代码,则在下面显示该项目的GitHub链接。谢谢! https://github.com/chao-li/GameCodex