В моей папке с возможностью рисования у меня есть несколько изображений, и все они ссылаются на идеальные, но когда я пытаюсь добавить еще изображения с точно таким же размером в ту же папку и пытаюсь ссылаться на них, появляется сообщение об ошибке «Не удалось преобразовать @ вытягиваемый / картинку в вытягиваемый " . Я пробовал одно и то же изображение с другим именем, и он продолжает давать мне эту ошибку. Я также пробовал это в другом макете XML и то же самое. Также имя изображения было «jack», «abc», «question_mark», как вы можете видеть, есть строгие правила о том, какие символы вы можете использовать, и все же сообщение об ошибке продолжает появляться. Любой совет был бы отличным, как решить проблему, спасибо.
Не удалось преобразовать @ drawable / picture в drawable
Ответы:
Перезапустите Eclipse (к сожалению), и проблема исчезнет.
источник
Также проверьте, содержит ли имя ресурса какие-либо недопустимые символы (для меня это было "-" в моем изображении)
источник
Если повторный запуск Eclipse не решает проблему, убедитесь, что имя изображения начинается с буквенного символа (нечислового).
источник
file name
должен находиться толькоabc...xyz
012...789
_
.
в папке "Ресурсы".например:
my-image.png есть
False
!MyImage.png есть
False
!мой image.png есть
False
!...
...
my-xml.xml есть
False
!MyXml.xml есть
False
!мой xml.xml есть
False
!...
...
источник
Это потому, что имя вашего изображения содержит символ «-». разрешены только символы [a-zA-Z0-9_.]
Спасибо
источник
У меня такая же проблема с Android Studio. Нет необходимости перезапускать среду IDE, просто закройте и снова откройте проект, и это решит проблему. (Убедитесь, что src является правильным вводом).
источник
В Android Studio имя файла ресурсов (изображений) не может начинаться с
NUMERIC
и не может содержать никакихBIG
символов. Чтобы решить вашу проблему, сделайте так, как сказал Алия. Просто перезапустите свою IDE. Это тоже решило мою проблему.источник
Упростите имя вашего файла, вроде бы какие-то специальные символы в имени файла вызывают сбой. например, измените "my-main-header.png" на "header1.png", не знаю почему, но это работает
источник
R.java
и-
не являются допустимыми символами для идентификаторов.Для Android Studio у меня была такая же проблема. Это было вызвано запуском из Linux, то есть файлы не получали расширение автоматически. Добавив вручную .png в конец имен файлов, он сможет распознать тип файла и соответственно загрузить его.
Студия Android может сойти с ума, если вы попытаетесь провести рефакторинг переименования внутри проекта, потому что Android попытается немедленно восстановить R. Я не знаю точно, что вызывает ошибку, поскольку она указывает на некоторую, казалось бы, случайную строку кода, которая в моем случае была комментарием.
Решение: удалите из drawable, переименуйте вне проекта и снова вставьте их.
источник
Это может быть даже более тривиально, чем то, что предлагали другие плакаты: если у вас несколько проектов, убедитесь, что вы не создали файл макета xml в неправильном проекте.
После создания файл откроется автоматически, так что это может остаться незамеченным, и вы предположите, что он находится в правильном проекте. Очевидно, что любые ссылки на чертежи или другие ресурсы будут недействительными.
И да, я такой глупый. С этого момента я закрою все неиспользуемые проекты :)
источник
Думаю, я нашел способ заставить его работать без перезапуска Eclipse или без закрытия проекта (у меня это сработало):
переименуйте имя файла изображения в res / в Eclipse -> выберите файл и нажмите F2 (для меня это res / drawable-mdpi / bush-landscape.jpg -> изменено на bush.jpg)
Создать проект (по-прежнему будет отображаться ошибка)
изменить изображение, в котором вы его использовали (я изменил его в графическом макете. Для меня это было LinearLayout / Background / bush-landscape -> изменено "bush-landscape" на "bush")
Построить проект
источник
Имя моего изображения было 21.jpg. Я переименовал его в abc.jpg, и он сработал. Поэтому убедитесь, что имя вашего изображения не начинается с цифры. Однако все вышеперечисленные ответы также принимаются.
источник
Если у вас есть правильные соглашения об именах, просто перейдите в File -> Invalidate Caches / Restart ..
И нажмите Invalidate Caches / Restart ..
В моем случае это помогло.
источник
В моем случае у меня было изображение в разных папках (с тем же именем) для поддержки разных dpi и размеров устройства. Все изображения имели одно и то же имя, кроме одного. Он был напечатан с ошибкой, и как только я переименовал его как другие имена, моя проблема была решена.
источник