2015-05-25 105 views
0

我有这样的代码。我想当抽屉没有打开时,按下后退按钮后,应用程序将关闭。该怎么办 ?无法按后退按钮</p> <pre><code>@Override public void onBackPressed() { if (drawerLayout.isShown()) { drawerLayout.closeDrawers(); } else super.onBackPressed(); } </code></pre> <p>如果抽屉是打开的,那么presing后退按钮抽屉关闭,但再次按下后退按钮的应用程序不打烊期间关闭抽屉

+0

@Mithun然后有什么用if的条件? –

回答

1

使用drawerLayout.isDrawerOpen()而不是isShown(),在这种情况下将始终返回true。这将导致if语句的else部分永远不会被执行。

+0

与isDrawerOpen()你打开我的眼睛;) – Abhijit

2

isShown()方法是View类的成员,并且涉及可见性。您可能需要其中一个DrawerLayout#isDrawerOpen()方法。

+0

与isDrawerOpen()你打开我的眼睛也;; – Abhijit

0

isShown()总是返回true。 也使用下列字段。

mDrawerLayout.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS); 
相关问题