我想在用户点击物理菜单按钮时显示导航抽屉,我会覆盖菜单按钮,如下所示:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ( keyCode == KeyEvent.KEYCODE_MENU ) {
// some code here to show navigation drawer
return true;
}
return super.onKeyDown(keyCode, event);
}
但我不知道如何在此方法中显示导航抽屉。
答案 0 :(得分:6)
DrawerLayout.openDrawer(Gravity.LEFT)就是你要找的。顺便说一下,我不认为这是一个糟糕的想法,因为很多人还不熟悉抽屉。
答案 1 :(得分:2)
嗯,在您的布局中的某个地方,您有一个DrawerLayout,它包含您的主视图和导航抽屉视图。
现在你可以做......
final DrawerLayout drawerLayout = (DrawerLayout)findViewById(R.id.drawer_layout);
final View navigation = ((NavigationDrawer)drawerLayout.findViewById(R.id.navigation_drawer));
if(drawerLayout.isDrawerOpen(navigation)) drawerLayout.closeDrawer(navigation);
else drawerLayout.openDrawer(navigation);