2015-11-01 38 views
1

我是Android Studio的新手。我无法弄清楚如何使ActionBarDrawerToggle采取我试图通过它的导航抽屉图像。它给了我一个错误,它期望一个工具栏而不是一个Int(我的图像)。请参阅下面的错误图片(工具栏错误链接)。ActionBarDrawerToggle不接受R.drawable文件

我的理解来自:http://developer.android.com/training/implementing-navigation/nav-drawer.html ActionBarDrawerToggle应该能够把我从上面的链接下载的可绘制资源文件。我不知道如何解决这个问题。任何帮助是极大的赞赏!

这是我的错误形象:Toolbar error

编辑:所以我就从这个链接帮助:ActionBarDrawerToggle No Suitable Constructor Drawable 回答说,删除文件绘制的,因为这是android.support.v7.app.ActionBarDrawerToggle; 所以我做了,但其他人抱怨说,这使得行动起来,并没有显示抽屉图标。所以我发现这个:https://stackoverflow.com/a/22612901/5482380 但是不知道这是不是很好的解决方法???????????

+0

看来他们在这个例子来自'v4'支持库引用类现在已废弃](http://developer.android的.com /参考/机器人/支撑/ V4 /应用/ ActionBarDrawerToggle.html)。不幸的是,[推荐'v7'版本](http://developer.android.com/reference/android/support/v7/app/ActionBarDrawerToggle.html)不使用接受可绘制资源ID的构造函数。 – PPartisan

+0

谢谢你的回复!请看我编辑。自从我参与一个综合项目以来,我还没有测试过会发生什么。我正在构建自己的项目来测试当我这样做时会发生什么。但其他人则抱怨使用v7时出现的某些动作。 – aahmed31

回答

0

该教程中引用的示例来自now deprecatedv4支持库。 recommended版本现在位于v7库中。但是,v7版本的构造函数不采用drawableid,而是使用Toolbar(如错误消息中所示)。

我建议你尝试setDrawerIndicatorEnabled()setHomeAsUpIndicator()方法。后者采用drawableid作为参数(link)。

编辑:也有setNavigationIcon()方法对你Toolbar

+0

非常感谢您的快速响应!我是新来的android工作室,所以我不明白我需要修复/添加到现在的所有事情。如果你知道任何问题,我正在寻找一个很好的教程?非常感谢! – aahmed31

+0

我发现这个教程:http://devsonline.in/content/index/category/android/topic/navigation_drawer_-_fragment_indroduction – aahmed31

+0

@ aahmed31不幸的是,我没有任何教程建议!你在你的应用中使用“工具栏”吗?我建议你尝试一下([这]](http://www.android4devs.com/2014/12/how-to-make-material-design-app.html)教程看起来像它覆盖它,虽然我们'请参阅支持库的第23版),然后在“工具栏”上使用上面的'setNavigationIcon()'方法。 – PPartisan