packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:196: package R does not exist
addPreferencesFromResource(R.xml.myfile);
^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:344: package R does not exist
menu.add(0, MENU_SAVE, 0, R.string.menu_save)
^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:346: package R does not exist
menu.add(0, MENU_CANCEL, 0, R.string.menu_cancel)
^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:454: package R does not exist
errorMsg = mRes.getString(R.string.error_empty);
^
packages/apps/Myfolder/src/com/android/myfolder/MyFile.java:458: package R does not exist
errorMsg = mRes.getString(R.string.error_empty);
Почему R не существует ошибки, входящей в android?
Ответ 1
Проверьте, нет ли каких-либо ошибок в файлах ресурсов или каких-либо недостающих зависимостях. Любой из них приведет к тому, что класс R.java не будет генерироваться кодом и, следовательно, много ошибок, подобных тем, которые вы показали.
Ответ 2
В моем случае эта ошибка возникла из-за того, что я изменил имя пакета приложения (до публикации в Google Play, конечно), но я забыл обновить атрибут package
элемента manifest
в моей AndroidManifest.xml
файл. Как только атрибут package
согласен с новым именем пакета, ошибка исчезла.
Ответ 3
Убедитесь, что у вас есть: пакет "ВАШЕ ИМЯ ПАКЕТА" в java файле, который вызывает класс R
Ответ 4
- Попробуйте Clean- > Build (Если вы не просто перезапустите eclipse, он просто сработает!)
- Если вы импортируете проект, убедитесь, что вы выбрали правильный уровень.
Ответ 5
Если вы строите из ant script, вы должны запустить aapt. См. Цель "-resource-src" в $SDK_DIR/tools/ant/main_rules.xml.
Ответ 6
Также не забудьте включить текущую активность в AndroidManifest.xml в теги приложения. Поэтому, если MyFile - ваш подкласс Activity, в нем должно быть что-то вроде этого:
<application
android:label="@string/app_name"
... >
<activity android:name=".MyFile"
android:configChanges="orientation|keyboardHidden"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
</intent-filter>
</activity>
..
</application>
Хотя то, что на самом деле зависит от вашей деятельности. Дополнительная информация об этом: http://developer.android.com/guide/topics/manifest/manifest-intro.html
Ответ 7
Вы можете попробовать import packagename.R;