我的应用程序中有一个非常标准的DrawerLayout。在这个特定的应用程序中,我只需要单击图标即可打开抽屉,而不要刷卡,因此除非用户按下适当的图标,否则抽屉锁定模式设置为LOCKED_CLOSED。
要关闭抽屉,我希望用户能够使用抽屉图标,操作栏上的主页图标或本机的“后退”按钮。前两个工作正常,但后退按钮确实不能。这是代码:
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.END)) {
drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
drawer.closeDrawer(GravityCompat.END);
drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
}else{
super.onBackPressed();
}
}
我在做什么错?我应该在抽屉布局对象而不是抽屉上调用set lock模式方法吗?