"R не может быть разрешено для переменной" - папка "gen" пуста
У меня есть ошибка:
R cannot be resolved to a variable
в строке:
setContentView(R.layout.main);
но я не могу разрешить это делать вещи, которые должны быть написаны другими пользователями, которые:
- Избавиться от строки "import android.R".
- Очистка проекта и последующее его создание.
- Завершить проект, а затем снова открыть его.
- Переход к свойствам проектa > Путь сборки Java > Отметьте флажок Android Version
- Следуя процедуре: Снимите флажок Project- > Build Automatically Project- > Properties- > Builders: убедитесь, что все блокировки Android (3) и Java (1) отмечены (и не более) Window- > Preferences- > Android- > Build: установите флажок "Автоматически обновлять папку" Ресурсы и активы "при сборке". Щелкните правой кнопкой мыши по проекту- > Инструменты Android- > Исправить настройки проекта (не уверен, что он на самом деле делает, но это не может повредить).
- Некоторые пользователи советуют проверить правильность файлов .xml. Я не знаю, как это сделать. Я должен признать, что я новичок в программировании на Java и андроиде, и я даже не написал ни одной строки в моем проекте - код был сгенерирован автоматически.
- Формат XML файла макета называется с использованием строчных букв.
- Ошибка в файлах ресурсов (без красных крестов).
layout main.xml файл:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
</LinearLayout>
Заранее благодарим за помощь!
Ответы
Ответ 1
Да, я застрял на этом часами. Мое решение состояло в том, чтобы: удалить все проекты из рабочей области- > повторно импортировать нужный проект, перейдя в файл- > import- > Browse- > выбирая проект- > и, наконец, проверьте "добавить проект в рабочий набор", затем нажмите "Готово", Ошибки .R, которые я однажды, затем исчезли. Я надеюсь, что это помогает кому-то!
Ответ 2
Проверьте папку res/
, чтобы убедиться, что в каждом файле, который он содержит, нет ошибки. Если какая-либо ошибка существует, R
не может быть сгенерирована.
Ответ 3
Не import Android.R;
вместо
import package.name.R;
где package.name
- это имя вашего пакета, объявленное в манифесте.
Android.R
содержит все макеты по умолчанию, упакованные в Android. Ваш пользовательский макет не будет Android.R
, он будет находиться в package.name.R;
Ответ 4
На затмении у вас есть окно "Проблемы". Если вы устраните все другие проблемы там, кроме R, не могут быть решены, проблема "R" будет автоматически фиксирована, так как R не генерируется, потому что, скорее всего, у вас есть проблемы, связанные с проектом.
Надеюсь, это поможет. Если вам не удается это сделать, поставьте печать того, что показывает окно проблем.
Ответ 5
Очистите проект один раз. Он должен автоматически создать этот файл.
Перейдите к Project->Clean
Конечно, это будет работать, если ваши XML файлы будут синтаксически правильными!
Ответ 6
Удалите R.java fie и позвольте ему генерировать снова... возможно, это поможет... У меня была одна и та же проблема несколько раз
Ответ 7
Попробуйте следующее:
комментарий setContentView(R.layout.main);
и снова создать/очистить проект. Затем раскомментируйте прокомментированную строку. Этот вопрос не следует рассматривать.
Ответ 8
Попробуйте следующее:
- Сначала отключить автоматическую сборку в Project > Build Automatically
- Изменение рабочего пространства eclipse
- Создайте новый тестовый проект Hello World
- Комментарий
setContentView(R.layout.main);
- Создайте проект вручную, щелкнув правой кнопкой мыши по проекту в проекте eclipse > Build
- Проверить, была ли создана генерация файла R.java в папке gen.
- Если да, то раскомментируйте
setContentView(R.layout.main);
- Теперь снова создайте проект вручную и запустите
Это должно решить проблему, надеюсь.
Ответ 9
Проблема решена, но я не знаю, что изменилось... Я переустановил Eclipse, SDK и т.д., и папка gen была пуста, как и раньше, та же проблема.
Мой руководитель сказал мне сделать все это снова, и это сработало (пока). Я не знаю, в чем причина. Я, хотя я все пробовал, но сейчас работает, так что никогда не узнаю. Спасибо за помощь, ребята!
Ответ 10
Ничего упомянутого выше не работало для меня.
Однако я сам это исправил.
Решение:
Если у вас есть другие файлы, кроме activity_main.xml
/main.xml
внутри app_name/res/layout
, удалите его и попробуйте выполнить очистку и сборку.
Примечание:
Нежелательные файлы или (скорее используемые позже) файлы внутри app_name/res/layout
будут *.out.xml
. Удалите то же самое.
Ответ 11
Убедитесь, что вы расширяете класс Activity
Ответ 12
У меня была аналогичная проблема. Пробовал все, и папка gen осталась пустой. Это должно быть с SDK версии 22. Я не установил "Android SDK build-tools". Мне просто пришлось установить его с помощью SDK Manager и перезапустить Eclipse. Как член указал на другую должность, ответ лучше поясняется в этой ссылке:
fooobar.com/questions/102893/...
Ответ 13
Что вам действительно нужно сделать, просто установите "build-tools" из sdk manager, а r.java будет автоматически сгенерирован в папке gen:)
Ответ 14
Простой
Убедитесь, что у вас есть версия SDK - build с версией AndroidManifest и project.properties.