R не может быть решена - ошибка Android - PullRequest
1042 голосов
/ 20 мая 2009

Я только что скачал и установил новый Android SDK. Я хотел создать простое приложение для его тестирования.

Мастер создал этот код:

package eu.mauriziopz.gps;

import android.app.Activity;
import android.os.Bundle;

public class ggps extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

но Затмение дает мне ошибку

R не может быть разрешена

на линии

setContentView(R.layout.main);

Почему?

PS: у меня есть файл XML с именем main.xml в res/layout/.

Ответы [ 106 ]

1 голос
/ 08 августа 2014

Убедитесь, что все ваши файлы ресурсов не имеют расширения в верхнем регистре. Я обнаружил, что сохранил несколько изображений с расширением .PNG в верхнем регистре. Я изменил его на .png, и все вернулось на круги своя.

1 голос
/ 08 декабря 2011

Реальный вопрос в том, как предотвратить возврат android.R; :

Окно -> Prefs -> Java -> Editor -> Сохранить действия

Снимите флажок «Организовать импорт».

Это сделает это.

1 голос
/ 03 марта 2014

То же самое случилось со мной, и я провел день, чтобы это исправить. на самом деле это глупая ошибка. Я просто делюсь своим опытом, может быть, это будет полезно для вас. Сначала внимательно посмотрите, когда вы наберете setContentView(R.layout.activity_to_do_list); услышите вашу начальную точку R.l, а затем затмение должно открыть предложение для вас выглядеть так

вы импортируете второй, а не layout-android.R. второй создается в вашем проекте, и вы слышите com.example.gridtest - имя пакета проекта. затем сфокусируйте импортированный раздел в вашем коде enter image description here

хорошо, посмотрите это import com.example.gridtest.R; его важно . Если вы уже импортировали этот android.R, удалите его. Спасибо, надеюсь, это работает. (вам не нужно делать это всегда, но если вы столкнулись с такой проблемой, то сделайте это, надеюсь, это поможет)

1 голос
/ 17 июля 2014
  1. Закройте все файлы, очистите проект, перезапустите Eclipse.

или

  1. R - это автоматически сгенерированный класс, который содержит константы, используемые для идентификации ваших ресурсов. Если у вас нет файла R.java (это будет gen / eu.mauriziopz.gps / R.java в Eclipse с 1.5 SDK), я бы порекомендовал закрыть и снова открыть ваш проект или перейти в Project> Build all (и выбрав "Построить автоматически" в то время как там, как рекомендовал Йозеф). Если это не сработает, попробуйте создать новый проект
1 голос
/ 14 сентября 2017

Когда вы только что открыли свой проект, требуется некоторое время *1002* для Android Studio, чтобы загрузить вещи. Это часто случается со мной. Я просто сижу и смотрю видео на YouTube в течение 5 минут, пока он загружается.

К тому времени символ не может разрешить R больше нет! : -)

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

1 голос
/ 23 октября 2010

Если вы работаете на Mac, проверьте, был ли .DS_Store добавлен в каталог в /res (ls -al в командной строке терминала). Удалите его и обновите / перестройте.

1 голос
/ 18 марта 2014

В некоторых ответах предлагается перезагрузить компьютер. Я обнаружил, что перезапуска сервера adb достаточно - это особенно верно, если вы только что обновили Android SDK.

Перезапустите adb через оболочку linux:

$ cd $ANDROID_SDK/platform-tools
$ ./adb kill-server
$ ./adb start-server

Вам может потребоваться перезапустить Eclipse, чтобы он мог повторно подключиться к перезапущенному adb серверу. Вам может потребоваться выполнить очистку / сборку, если Eclipse не компилирует проекты автоматически.

1 голос
/ 09 октября 2013

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

0 голосов
/ 10 ноября 2011

Проверьте содержимое вашего XML-файла. Если layout_width или layout_height содержат элемент match_parent, измените его на fill_parent. Это решило проблему для меня.

0 голосов
/ 05 сентября 2012

В моем случае я пытался преобразовать свой проект в Maven. Через некоторое время (и тысячи случайных ошибок, которые НИЧЕГО не говорили) я попытался отменить все операции. Что я не заметил, .project файл был изменен, и он не был виден в Eclipse.

Только возврат файла .project к предыдущей версии помог мне исправить эту ошибку.

...