Android: не удалось преобразовать @drawable / picture в drawable
в моей папке drawable у меня есть несколько изображений, и все они ссылаются идеально, но когда я пытаюсь добавить еще несколько изображений с точно таким же размером в той же папке и пытаюсь ссылаться на него, это флаги ошибка "не удалось преобразовать @drawable / picture в drawable". Я попробовал тот же образ с другим именем и он просто продолжает давать мне эту ошибку. Я также пробовал его в другом XML-макете и то же самое. Также название картины были "Джек", " abc", "question_mark", как вы можете видеть, строго в правилах того, какие символы вы можете использовать, и все же сообщение об ошибке продолжает появляться. Любой совет будет отличным о том, как решить проблему, спасибо.
не удалось преобразовать @drawable / picture в drawable
14 ответов
также проверьте, содержит ли имя ресурса какие-либо незаконные символы (для меня это был " - " в моем изображении)
Если повторный запуск Eclipse не устраняет проблему, убедитесь, что имя изображения начинается с Альфа-символа (нечислового).
file name
должен содержать только abc...xyz
012...789
_
.
в папке Resources.
например:
мой образ.формат PNG is False
!
MyImage.формат PNG is False
!
мой имидж.формат PNG is False
!
...
...
my-xml.в XML is False
!
MyXml.в XML is False
!
мой XML-файле.в XML is False
!
...
...
Это потому, что ваше имя картинки содержит символ" -". допускаются только символы [a-zA-Z0-9_.]
спасибо
У меня такая же проблема на Android Studio. Нет необходимости перезапускать IDE, просто закройте и снова откройте проект, и это решит проблему. (Убедитесь, что src является корректным входом).
в Android Studio имя файла ресурса(изображений) не может начинаться с NUMERIC
и он не может содержать никаких BIG
символ. Чтобы решить вашу проблему, сделайте, как сказала Алия. Просто перезапустите IDE. Это решило и мою проблему.
упростите имя вашего файла, кажется, что любые специальные символы в имени файла делают его икота. например, chaange " my-main-header.png "to" header1.png " не уверен, почему, но он работает
для Android Studio у меня была такая же проблема. Это было вызвано запуском из linux, то есть файлы не получили расширение автоматически. Вручную добавляя .png до конца имен файлов он может распознать тип файла и загрузить соответственно.
Android studio может бросить шипение, если вы попытаетесь рефакторинг переименовать внутри проекта, потому что android попытается немедленно восстановить R. Я не знаю точно, что вызывает ошибку, поскольку она указывает на некоторые, казалось бы случайная строка кода, которая в моем случае была комментарием.
решение для этого: удалить из drawable, переименовать вне проекта и снова бросить их.
Это может быть даже более тривиальным, чем то, что предложили другие плакаты: если у вас есть несколько проектов, убедитесь, что вы не создали файл макета xml в неправильном проекте.
после создания файл откроется автоматически, так что это может остаться незамеченным, и вы предполагаете, что он находится в правильном проекте. Очевидно, что любые ссылки на рисунки или другие ресурсы будут недействительны.
и да, я настолько глуп. Теперь я закрою любые неиспользуемые проекты:)
Я думаю, что нашел способ заставить его работать без перезапуска Eclipse или без закрытия проекта (это сработало для меня):
переименовать имя файла изображения под res / in Eclipse - > выберите Файл и нажмите F2 (для меня это res/drawable-mdpi/bush-landscape.jpg - > изменен на bush.формат JPG)
построить проект (он все равно покажет ошибку)
изменить изображение, где вы его использовали (я изменился в графическом макете. Для меня это место было LinearLayout / фон / куст-пейзаж - > изменен "куст-пейзаж" на "куст")
Строительство
мое имя изображения было 21.формат jpg. Я переименовал его в abc.JPG и это сработало. Поэтому убедитесь, что ваше имя изображения не начинается с номера. Однако все вышеперечисленные ответы также принимаются.
Если у вас есть соглашения об именах, то просто перейдите в ->Отменить Кэширование / Перезапуск..
и нажать Отменить Кэширование / Перезапуск..
Это помогло в моем случае.
в моем случае у меня было изображение в разных папках (с тем же именем) для поддержки разных dpi и размеров устройств. Все изображения имели одинаковое название, кроме одного. Он был напечатан неправильно, и как только я переименовал его, как и другие имена, он решил мою проблему.