在我的drawable文件夹中,我有一些图像,它们都引用完美,但当我尝试在同一文件夹中添加完全相同大小的图像,并尝试引用它时,标记错误"Failed to convert @drawable/picture into a drawable" . 我尝试使用不同名称的相同图像,它只是不断给我这个错误 . 我也尝试过不同的XML布局和同样的事情 . 此外,图片的名称一直是"jack","abc","question_mark",因为您可以看到严格按照您可以使用的字符的规则,仍然会出现错误消息 . 对于如何解决问题,任何建议都会很棒,谢谢 .
无法将@ drawable / picture转换为drawable
14 回答
简化文件的名称,似乎是文件名中的任何特殊字符都会使其打嗝 . 例如chaange“my-main-header.png”到“header1.png”不知道为什么,但它确实有效
重启Eclipse(不幸的是),问题就会消失 .
还要检查资源名称是否包含任何非法字符(对我而言,我的图像中是“ - ”)
如果重新启动Eclipse无法解决问题,请确保图像名称以字母字符(非数字)开头 .
我的图像名称是21.jpg . 我将其重命名为abc.jpg并且有效 . 因此,请确保您的图片名称不以数字开头 . 然而,所有上述答案也被接受 .
如果您有正确的命名约定,那么只需转到 File - > Invalidate Caches / Restart..
然后按 Invalidate Caches / Restart..
这有助于我的情况 .
对于Android Studio,我遇到了同样的问题 . 它是由linux运行引起的,这意味着文件没有自动收到扩展名 . 通过手动将.png添加到文件名的末尾,它可以识别文件类型并相应地加载 .
如果你试图在项目中重构重命名,Android工作室可能会抛出一个合适的东西,因为android会尝试立即重新生成R.我不知道是什么原因导致错误,因为它指向一些看似随机的代码行,在我的例子中是一个注释 .
解决方案:从drawable中删除,在项目外重命名并再次将它们放入 .
我想我找到了一种方法让它无需重新启动Eclipse,或者没有关闭项目(它适用于我):
在Eclipse /中重命名图像文件名 - >选择文件并按F2(对我来说它res / drawable-mdpi / bush-landscape.jpg - >更改为bush.jpg)
Build Project(它仍会显示错误)
更改您使用它的图像(我在图形布局中更改 . 对我来说,地方是LinearLayout /背景/布什景观 - >将“灌木景观”更改为“灌木丛”)
建设项目
file name must contain only abc...xyz 012...789 _ . in Resources folder.
for ex:
my-image.png 是
False
!MyImage.png 是
False
!my image.png 是
False
!...
...
my-xml.xml 是
False
!MyXml.xml 是
False
!my xml.xml 是
False
!...
...
它可能比其他海报建议的更简单:如果你有多个项目,请确保你没有在错误的项目中创建xml布局文件 .
创建后,文件将自动打开,因此可能会被忽视,您认为它在正确的项目中 . 显然,对drawables或其他资源的任何引用都是无效的 .
是的,我是那么愚蠢 . 我将从现在开始关闭所有未使用的项目:)
在我的情况下,我在不同的文件夹(具有相同的名称)中有一个图像,用于支持不同的dpi和设备大小 . 所有图像都有相同的名称,除了其中一个 . 这是错误的,一旦我像其他名字一样重命名,它解决了我的问题 .
这是因为您的图像名称包含“ - ”符号 . 唯一允许的字符是[a-zA-Z0-9_ . ]
谢谢
在Android Studio中,您的资源(图像)文件名不能以
NUMERIC
开头,并且它不能包含任何BIG
字符 . 要解决你的问题,请像Aliyah说的那样 . 只需重新启动IDE即可 . 这也解决了我的问题 .我在Android Studio上遇到同样的问题 . 无需重新启动IDE,只需关闭并重新打开项目即可解决问题 . (确保src是correclty输入) .