2012-02-06 2 views
0

В моем макете я переименовал все элементы управления по умолчанию (все из Eclipse gui), однако я заметил, что у моего файла R.java не было правильных констант id, поэтому я запускал проект с чистым и после сохранения он правильно сгенерировал его *.Идентификатор Android полностью не синхронизирован

Однако, когда я пытаюсь ссылаться на существующий id, например. андроид: layout_alignLeft = «@ идентификатор/selectKey»:

  1. Если я ввожу его в XML вручную, я получаю «ресурс не найден» от компилятора, несмотря на это, находясь в R.java и быть фактическое имя контроля, который я ему дал.

  2. Если я попытаюсь обновить одно и то же свойство с помощью Eclipse, когда я развожу 'ID' из диалогового окна, он все еще содержит список только исходных имен, а не новые, которые я ему дал (и как указано в R .java файл)

Как это исправить? Кажется, что что-то не синхронизируется правильно.

* btw, я не знаю, если это ошибка, но после того, как я очистил проект, он удалил файл R.java, но затем отказался воссоздать R.java, потому что мой код ссылался на объект R, который не существовать. В конце концов, мне пришлось прокомментировать каждую ссылку на R в моем коде, чтобы он мог восстановить файл R.java. Таким образом, это случай, когда R создается, опираясь на последовательность компилятора, но преемственность компилятора, полагаясь на R.

+0

Вы пробовали проект> чистый? – ggreiner

ответ

2

Если Project -> Clean не работает. Вы можете удалить папку «gen» (ужас). Eclipse затем перестроит его для вас.

+0

Удаление папки с папкой работало, не знаю, какая разница между этим и удалением R.java, однако спасибо :) Однако, как вы исправляете проблему циклической зависимости от R.java, не создается, пока не будут исправлены все ошибки и вы не можете исправить ошибки до создания R.java (т. е. мой код использовал объект R, поэтому он не компилировался, и мне приходилось комментировать каждую строчку, ссылающуюся на R до создания R.java. –

+0

Это хороший вопрос сам по себе - ген папка, и содержимое будет автоматически перестраиваться, но если есть какая-то проблема, она эффективно отменяет сборку. ЕСЛИ вы исправляете ошибки (например, ошибка компоновки XML), затем очищайте проект, который он должен успешно перестроить, без необходимости комментировать все. посмотрите на вкладке с ошибкой в ​​Eclipse, он расскажет вам о проблемах, и по моему опыту, который находится наверху списка, обычно является вашей фактической проблемой. –

+0

Спасибо, все отсортировано сейчас. Первое приложение для андроида-убийцы почти завершено;) –

0

Вручную удалите папку gen и bin или classes, затем попробуйте другой очистить.

Кроме того, похоже, что это не проблема, но убедитесь, что вы импортируете правильный R в свой код; т. е. ваш, а не андроид.R.