Android:无法将@ drawable /图片转换为绘图

在我的可绘制文件夹中有几个图像,他们都参考完美,但是当我尝试在同一文件夹中添加具有完全相同大小的更多图像,并尝试引用它时,标记为“无法转换@ drawable / picture into a drawable“ 。 我用不同的名字尝试了相同的图像,只是一直给我那个错误。 我也尝试了不同的XML布局和相同的东西。 此外,图片的名称已经“jack”,“abc”,“question_mark”,你可以看到严格的规则,你可以使用什么字符,仍然错误消息不断出现。 任何意见将是如何解决这个问题很好,谢谢。

无法将@ drawable / picture转换为drawable

重新启动Eclipse(不幸),问题就会消失。

另外检查资源名称是否包含任何非法字符(对我来说,这是一个“ – ”在我的形象)

如果重新启动Eclipse无法解决问题,请确保图像名称以字母(非数字)开头。

file name只能包含abc...xyz 012...789 _ . 在资源文件夹中。

例如:

my-image.pngFalse
MyImage.pngFalse
我image.pngFalse

my-xml.xmlFalse
MyXml.xmlFalse
我的xml.xmlFalse

这是因为您的图像名称包含“ – ”符号。 唯一允许的字符是[a-zA-Z0-9_。]

谢谢

我在Android Studio上遇到同样的问题。 无需重启IDE,只需closures并重新打开项目,这将解决问题。 (确保src是正确的input)。

在Android Studio中,您的资源(图像)文件名不能以NUMERIC开头,并且不能包含任何BIG字符。 要解决你的问题,就像Aliyah说的那样。 只需重新启动您的IDE。 这也解决了我的问题。

简化文件的名称,似乎是文件名中的任何特殊字符使其打嗝。 例如chaange“my-main-header.png”到“header1.png”不知道为什么,但它的工作原理

对于Android Studio,我有这个相同的问题。 这是由于从Linux运行引起的,这意味着文件不会自动收到扩展名。 通过手动将.png添加到文件名的末尾,可以识别文件types并相应加载。

如果你尝试在项目中重新命名重命名,Android工作室可能会引起一阵怀疑,因为android会立即尝试重新生成R。 我不知道是什么原因导致了错误,因为它指向一些看似随机的代码行,在我的情况下是一个评论。

对此的解决scheme:从drawable中删除,重命名项目之外并将其重新放入。

它可能比其他海报build议更微不足道:如果您有多个项目,请确保您没有在错误的项目中创buildxml布局文件。

创build后,文件将自动打开,这可能会被忽略,并且您认为它在正确的项目中。 显然任何对drawables或其他资源的引用都是无效的。

是的,我很愚蠢。 我从现在开始closures所有未使用的项目:)

我想我find了一个方法来让它在不重新启动Eclipse的情况下工作,或者没有closures项目(它为我工作):

  • 在Eclipse的res /下重命名图像文件名 – >select文件并按F2(对于我来说,res / drawable-mdpi / bush-landscape.jpg – >改成bush.jpg)

  • 生成项目(它仍然会显示错误)

  • 改变图像在你使用它(我改变了graphics布局。对我来说,这个地方是LinearLayout /背景/布什景观 – >改变“布什景观”到“布什”)

  • build立项目

我的图片名称是21.jpg。 我把它重命名为abc.jpg,它工作。 所以请确保您的图片名称不是以数字开头。 但以上所有答案也被接受。

如果你有正确的命名约定,那么去文件 – > 无效caching/重新启动..

然后按无效caching/重新启动..

这有助于我的情况。

在我的情况下,我有一个图像在不同的文件夹(具有相同的名称),以支持不同的dpi和设备的大小。 除了其中一个,所有的图像都有相同的名字。 这是错误的,一旦我改名像其他名字,它解决了我的问题。