【问题标题】:Drawer icon requires 2 clicks to open drawer抽屉图标需要点击 2 次才能打开抽屉
【发布时间】:2015-09-11 12:11:58
【问题描述】:

我之前使用 Android Studio 的向导来实现 Master-Detail 模式,并尝试将 Detail 转换为具有抽屉而不是“向上”按钮。

我进入 AndroidManifest.xml 并删除了 Detail 的活动设置中的“父”属性,但它仍然不起作用。

然后我意识到在我的 Detail Activity 的 onOptionsItemSelected 函数中,我忘记了删除这个:

if (id == android.R.id.home) {
            // This ID represents the Home or Up button. In the case of this
            // activity, the Up button is shown. Use NavUtils to allow users
            // to navigate up one level in the application structure. For
            // more details, see the Navigation pattern on Android Design:
            //
            // http://developer.android.com/design/patterns/navigation.html#up-vs-back
            //
            NavUtils.navigateUpTo(this, new Intent(this, SongListActivity.class));
            return true;

现在它有点工作了,但我必须点击导航抽屉图标 2 次。这是我指的“导航抽屉图标”:

我注意到,当我单击主列表中的某个项目时,它会启动 Detail 活动,并且 它似乎不在焦点上。 导航栏一开始是不可见的。这就是我所说的“导航栏”的意思:

当我单击一次导航抽屉图标时,会显示导航栏。当我再次单击它时,然后抽屉将打开。

如何获得它,以便新活动一启动就已经成为焦点,所以我只需单击一次导航抽屉图标?


编辑:我注意到如果我尝试点击操作栏中的任何东西,需要点击 2 次。我在我的 Android 上尝试了其他几个应用程序,他们没有这个问题。通常,他们从已经存在的导航栏开始。也许我有一些代码隐藏了导航栏,使操作栏不在焦点上?

【问题讨论】:

    标签: android navigation-drawer


    【解决方案1】:

    我刚刚查看了我的代码,发现我忘记删除之前的rootView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);。它在我的 DetailFragment 类的 onCreateView 方法中。我注释掉了,问题马上就解决了。

    【讨论】:

      猜你喜欢
      • 2018-05-06
      • 2019-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多