默认的Android Studio导航抽屉活动模板不显示汉堡图标,仅显示箭头图标

时间:2015-06-12 16:48:33

标签: android navigation-drawer hamburger-menu

This person is basically running into the same problem I'm having但是,提供的解决方案没有帮助,也不适用于我,因为我的代码实际上是调用mDrawerToggle.sycnState()(在延迟的Runnable中)。

我也尝试将它添加到我的Fragment中的onActivityCreated,它似乎没有做任何事情。我不知道syncState究竟做了什么,我无法判断它是否正在同步打开状态(模板代码默认发生),然后在手动关闭抽屉时它再也不会同步。

我发布了代码但您可以通过在Android Studio(1.2.2)中创建一个新项目,选择导航抽屉活动,然后只是运行项目来测试这一点 - 无需进行任何更改。你会看到唯一的图标是< - 箭头。我甚至设置断点来检查ActionBarDrawerToggle对象,该对象实际上在其内存中有汉堡包图标,用于绘制图标,让我更加沉溺于我!

我在这里结束了我的智慧。

1 个答案:

答案 0 :(得分:20)

我想出了一个解决方案,以防其他人遇到这个问题:

更改片段顶部的导入
import android.support.v4.app.ActionBarDrawerToggle;

import android.support.v7.app.ActionBarDrawerToggle;

然后从

更改setUp中的代码
mDrawerToggle = new ActionBarDrawerToggle(
            getActivity(),                    /* host Activity */
            mDrawerLayout,                    /* DrawerLayout object */
            R.drawable.ic_drawer,             /* nav drawer image to replace 'Up' caret */
            R.string.navigation_drawer_open,  /* "open drawer" description for accessibility */
            R.string.navigation_drawer_close  /* "close drawer" description for accessibility */
    )

mDrawerToggle = new ActionBarDrawerToggle(
            getActivity(),                    /* host Activity */
            mDrawerLayout,                    /* DrawerLayout object */
            R.string.navigation_drawer_open,  /* "open drawer" description for accessibility */
            R.string.navigation_drawer_close  /* "close drawer" description for accessibility */
    )