我的应用程序中有两个导航抽屉,分别由左侧和右侧的两个图标启用。现在我的右侧图标是一个菜单项,因此我可以通过onOptionsItemSelected
.
我遇到的问题是,当我打开右抽屉然后打开左抽屉时,它们重叠。当我单击左侧的导航抽屉按钮(应用程序图标旁边可能的主页按钮)时,我想知道如何关闭右侧抽屉。是否有该按钮的点击监听器,如菜单项?
提前致谢。
我的应用程序中有两个导航抽屉,分别由左侧和右侧的两个图标启用。现在我的右侧图标是一个菜单项,因此我可以通过onOptionsItemSelected
.
我遇到的问题是,当我打开右抽屉然后打开左抽屉时,它们重叠。当我单击左侧的导航抽屉按钮(应用程序图标旁边可能的主页按钮)时,我想知道如何关闭右侧抽屉。是否有该按钮的点击监听器,如菜单项?
提前致谢。
我找到了解决方案。最初,the ActionBarDrawerToggle
按钮(Home Button)也是一个菜单项。因此,当我们调用:
mDrawerLayoout.onOptionsItemSelected()
我们可以把代码放在那里。
这是完整的代码:
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
if (myDrawerToggle.onOptionsItemSelected(item)) {
if (myDrawerLayout.isDrawerVisible(navDrawerRight) != false) {
myDrawerLayout.closeDrawer(navDrawerRight);
}
return true;
}
注意我放了myDrawerLayout.isDrawerVisible(View drawer)
. 那是因为isDrawerOpened
只有在抽屉完全打开或关闭时才有效。isDrawerVisible()
当抽屉处于任何状态,打开,关闭或介于两者之间时,最好使用它。
希望这可以帮助那里的人。