вложенный res («R») не найден («R не может быть преобразован в переменную»)

#android

#Android

Вопрос:

Это моя первая попытка создания приложения для Android. Я ориентируюсь на Android 4 / Ice Cream Sandwich.

При попытке запустить приложение я получаю сообщение об ошибке «R не может быть преобразован в переменную» в этой строке:

 setContentView(R.layout.main);
 

Пока main.xml Есть ли там, ниже reslayout как это должно быть.

В чем может быть проблема с этим приложением, пока еще минимально возможным (единственный код, который у него есть, был автоматически сгенерирован)?

Комментарии:

1. Хорошо, он запущен (вроде). У меня было несоответствие целевых / минимальных API. Как только я исправил это и перезапустил Elipse, он сгенерировал необходимые файлы в gen (R) . Однако затем эмулятор прохрипел.

2. Используете ли вы IDE с проектом по умолчанию или инструменты командной строки? Скелетное приложение большинства IDE будет компилировать R в тот же пакет, что и ваша скелетная активность.

Ответ №1:

«R не может быть преобразован в переменную» появляется, когда: а) вы не соответствуете версии sdk Б) в любом из ваших макетов есть ошибки, из-за которых автоматически созданные файлы R не создаются В) Другие проблемы обычно решаются путем очистки проекта

Комментарии:

1. Это также произойдет, если имя пакета в вашем манифесте не совпадает с именем пакета. Это не исправляется путем очистки и должно быть изменено вручную.

Ответ №2:

Взгляните на ваши предложения импорта и посмотрите, есть ли импорт для класса «R». Какую среду разработки вы используете?

Комментарии:

1. Eclipse Indigo — мне пришлось воспользоваться быстрым исправлением, чтобы добавить это для компиляции: — вау, это действительно раздражает, что нажатие Enter отправляет сообщение. импортируйте com.axx3AndSpace.R;

Ответ №3:

Если вы уже очистили и собрали свой проект, и если проблема не решена,

  1. Проверьте имя ваших XML-файлов. Он не должен содержать никаких заглавных букв.
  2. Сразу после очистки проекта проверьте экран консоли, могут быть проблемы с xml, какая программа может быть скомпилирована с ними раньше. (Проблемы с XML, такие как плохой блок и т. Д.) Очистите эти строки и после успеха запишите их снова.

Ответ №4:

Простой шаг, который сработал для меня:

Перейдите к gen [Сгенерированные Java-файлы].Если вы сможете найти R.java файл, дважды щелкните, чтобы открыть файл. Сохраните и закройте его. Ошибка, связанная с переменной R в основном действии, кажется, исчезает для меня.