1

我的应用程序中有两个导航抽屉,分别由左侧和右侧的两个图标启用。现在我的右侧图标是一个菜单项,因此我可以通过onOptionsItemSelected.

我遇到的问题是,当我打开右抽屉然后打开左抽屉时,它们重叠。当我单击左侧的导航抽屉按钮(应用程序图标旁边可能的主页按钮)时,我想知道如何关闭右侧抽屉。是否有该按钮的点击监听器,如菜单项?

提前致谢。

4

1 回答 1

3

我找到了解决方案。最初,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()当抽屉处于任何状态,打开,关闭或介于两者之间时,最好使用它。

希望这可以帮助那里的人。

于 2013-10-18T07:52:19.400 回答