Фон LinearLayout не найден

Я знаю, что это фоновое изображение существует и находится в следующих папках drawable:

  • res/drawable-mdpi/
  • разрешение/рисунок-hdpi/
  • разрешение/рисунок-xhdpi/
  • разрешение/рисунок-xxhdpi/

Файл называется coming_up.9.png, так как это девятый патч, и я знаю, что это работает, потому что я делаю то же самое с рядом других изображений.

XML макета

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/coming_up">

Ошибка

Error:(213, 37) No resource found that matches the given name (at 'background' with value '@drawable/coming_up').

person Jacksonkr    schedule 18.12.2015    source источник


Ответы (1)


Я уже давно занимаюсь этой проблемой, и я решил, что сегодня был день, чтобы решить ее. Вот как я решил проблему:

Шаги, которые я предпринял:

  1. Заменил фон на другое (рабочее) изображение с именем @drawable/checkbox_checked, чтобы посмотреть, что произойдет — приложение отлично работало с новым изображением.
  2. Искал checkbox_checked в моей папке ресурсов /res, чтобы узнать, где он существует.
  3. Обнаружил, что checkbox_checked.png был только в основной папке /drawable
  4. Скопировал coming_up.9.png в /drawable из /drawable-mdpi - все та же ошибка
  5. Переименовал coming_up.9.png в coming_up.png - заработало
  6. Переименовал coming_up.png обратно в coming_up.9.png - все еще работает
  7. Удалено coming_up.9.png из /drawable, оставив его во всех других моих папках с возможностью рисования - сработало

По-видимому, это ошибка Android Studio, которая каким-то образом была устранена на шаге 5. Независимо от того, эта проблема решена, поэтому я надеюсь, что это сэкономит кому-то время, которое мне потребовалось, чтобы понять это.

person Jacksonkr    schedule 18.12.2015