Предупреждение о том, что существует две версии класса R. Существует универсальная версия, которая входит в состав пакетов Android (android.R), и есть специфичная для проекта версия, представляющая ваши локальные файлы ресурсов (com.myname.myapp.R). Просто посмотрите на них как на две версии классов Date в стандартной библиотеке java. (Java.util.Date & java.sql.Date) два класса с одинаковым именем, указанным в package.

я есть приложение, разделенное на подпакеты, только для личной организации:

com.myname.myapp
 |
 `-  com.myname.myapp.activities
 |
 `-  com.myname.myapp.whatever
 |
 `-  ...

Проблема в том, что сгенерированная R.java расположена вcom.myname.myapp и, таким образом, когда я печатаюR.id.something в классе из подпакетаcom.myname.myapp.activities, Я получилR cannot be resolved to a variable (очевидно, я думаю).

Когда я нажимаю наОрганизовать импорт (Ctrl + Shift + O), Eclipse исправляет это добавлениеimport com.myname.myapp.R наверху, и все, кажется, работает отлично. Но с другой стороны,Android документация утверждает это:

Eclipse иногда любит добавлять оператор импорта android.R вверху ваших файлов, которые используют ресурсы, особенно когда вы просите eclipse сортировать или иным образом управлять импортом. Это приведет к поломке вашей марки. Посмотрите на эти ошибочные операторы импорта и удалите их

Зная, что все работает отлично, что мне делать?

Ответы на вопрос(3)

Ваш ответ на вопрос