首页 文章

Android:无法将@ drawable / picture转换为drawable

提问于
浏览
112

在我的drawable文件夹中,我有一些图像,它们都引用完美,但当我尝试在同一文件夹中添加完全相同大小的图像,并尝试引用它时,标记错误"Failed to convert @drawable/picture into a drawable" . 我尝试使用不同名称的相同图像,它只是不断给我这个错误 . 我也尝试过不同的XML布局和同样的事情 . 此外,图片的名称一直是"jack","abc","question_mark",因为您可以看到严格按照您可以使用的字符的规则,仍然会出现错误消息 . 对于如何解决问题,任何建议都会很棒,谢谢 .

无法将@ drawable / picture转换为drawable

14 回答

  • 25

    简化文件的名称,似乎是文件名中的任何特殊字符都会使其打嗝 . 例如chaange“my-main-header.png”到“header1.png”不知道为什么,但它确实有效

  • 1

    重启Eclipse(不幸的是),问题就会消失 .

  • 28

    还要检查资源名称是否包含任何非法字符(对我而言,我的图像中是“ - ”)

  • 145

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

  • 1

    我的图像名称是21.jpg . 我将其重命名为abc.jpg并且有效 . 因此,请确保您的图片名称不以数字开头 . 然而,所有上述答案也被接受 .

  • 2

    如果您有正确的命名约定,那么只需转到 File - > Invalidate Caches / Restart..

    然后按 Invalidate Caches / Restart..

    这有助于我的情况 .

  • 1

    对于Android Studio,我遇到了同样的问题 . 它是由linux运行引起的,这意味着文件没有自动收到扩展名 . 通过手动将.png添加到文件名的末尾,它可以识别文件类型并相应地加载 .

    如果你试图在项目中重构重命名,Android工作室可能会抛出一个合适的东西,因为android会尝试立即重新生成R.我不知道是什么原因导致错误,因为它指向一些看似随机的代码行,在我的例子中是一个注释 .

    解决方案:从drawable中删除,在项目外重命名并再次将它们放入 .

  • 55

    我想我找到了一种方法让它无需重新启动Eclipse,或者没有关闭项目(它适用于我):

    • 在Eclipse /中重命名图像文件名 - >选择文件并按F2(对我来说它res / drawable-mdpi / bush-landscape.jpg - >更改为bush.jpg)

    • Build Project(它仍会显示错误)

    • 更改您使用它的图像(我在图形布局中更改 . 对我来说,地方是LinearLayout /背景/布什景观 - >将“灌木景观”更改为“灌木丛”)

    • 建设项目

  • 2

    file name must contain only abc...xyz 012...789 _ . in Resources folder.

    for ex:

    my-image.pngFalse !
    MyImage.pngFalse !
    my image.pngFalse !
    ...
    ...

    my-xml.xmlFalse !
    MyXml.xmlFalse !
    my xml.xmlFalse !
    ...
    ...

  • 1

    它可能比其他海报建议的更简单:如果你有多个项目,请确保你没有在错误的项目中创建xml布局文件 .

    创建后,文件将自动打开,因此可能会被忽视,您认为它在正确的项目中 . 显然,对drawables或其他资源的任何引用都是无效的 .

    是的,我是那么愚蠢 . 我将从现在开始关闭所有未使用的项目:)

  • 200

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

  • 3

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

    谢谢

  • 5

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

  • 0

    我在Android Studio上遇到同样的问题 . 无需重新启动IDE,只需关闭并重新打开项目即可解决问题 . (确保src是correclty输入) .

相关问题