У меня R не может быть решена ошибка в Eclipse и в NetBeans тоже - PullRequest
2 голосов
/ 15 июня 2011

Что я могу с этим сделать? Я сделал полностью новый проект, но ошибка здесь: R не может быть решена. Ошибка в строке setContentView(R.layout.main);.

Ответы [ 7 ]

5 голосов
/ 16 июня 2011

Первый: Ваша ошибка означает, что файл R.java не сгенерирован, поэтому вы должны очистить проект ( Project => Очистить => проверить ваш проект и нажать OK ),

Второе: может быть ваш файл R.java уже сгенерирован, в этом случае проверьте ваш импорт, если найдете: import android.R; замените его своим собственным классом R, например: import com.yourpackage.R;

Надеюсь, это поможет

3 голосов
/ 04 сентября 2012

Здесь, в NetBeans, я решил эту проблему, поместив import android.R.*.Звездочка важна!

3 голосов
/ 15 июня 2011

Есть несколько вещей, которые вы можете сделать, чтобы решить эту проблему.Сначала убедитесь, что у вас нет импорта android.R при импорте.

Возможно, ресурс еще не создан.Я нахожу, что эта ошибка часто исчезает, если вы строите проект.

Щелкните правой кнопкой мыши по проекту, щелкните по проекту сборки или, если у вас нет доступного проекта сборки, сборка все тоже будет работать.

Другая вещь, которую вы можете сделать, если это не сработает, это импортировать «R»

import <your package path: for example com.test.R>

Удачи.

3 голосов
/ 15 июня 2011

Позвольте мне угадать ... у вас есть:

import android.R;
// or nothing

Убедитесь, что у вас есть:

import your.package.R;

И, конечно, убедитесь, что у вас есть файл с именем main.xml вВаша папка res/layout.

1 голос
/ 04 мая 2012

У меня была похожая ошибка в Eclipse, и я исправил ее, выбрав YourProject Свойства> Путь сборки Java> Порядок и экспорт и переместив YourProject / src и YourProject / gen до дна. Мой .classpath файл был:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry kind="lib" path="libs/cordova.jar"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

и сейчас:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry kind="lib" path="libs/cordova.jar"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

Надеюсь, это кому-нибудь пригодится.

1 голос
/ 15 июня 2011

Проблема в том, что R-файл не генерируется, что означает, что в некоторых файлах проекта есть ошибка, наиболее вероятно в файлах макета XML. Пожалуйста, проверьте их на наличие ошибок и очистите ваш проект (в Eclipse Project-> Clean), и вы должны быть в порядке.

(в качестве примечания: вам не нужно явно импортировать R-файл, т. Е. Иметь import something.R; (кроме случая, определенного @mah)).

1 голос
/ 15 июня 2011

Если ваш AndroidManifest.xml утверждает, что ваш пакет чем-то отличается от пакета Java, в котором находится ваш исходный код (что совершенно правильно при правильном управлении), вы должны импортировать R из имени пакета, объявленного в вашем манифесте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...