В некотором коде мы испытываем, происходя из различных учебных руководств, мы заканчиваем тем, что пропустили R.id, который должен быть сгенерирован в R.java, очевидно. Мы можем включить его (по аналогии с другими "первыми" проектами Android, которые мы сделали), но поскольку этот файл автоматически генерируется, что-либо, что мы действительно любим, это просто перезаписывается в конечном счете.
public static final class id
{
public static final int Button01=0x7f060004;
.
.
.
}
Была ли конструкция для помещения в strings.xml, main.xml, и т.д. который заставляет это быть сгенерированным?
(Да, мы - общие новички. Извините.)
Спасибо за любую справку можно дать,
Russ Bateman
R.java автоматически создается Eclipse. Если он не построен, это означает, что у вас, вероятно, есть ошибка где-то в ваших XML-файлах или ресурс с недопустимым именем.
Иногда это просто Eclipse, который делает странные вещи, в этом случае вы можете попробовать:
Проект> Очистить> весь проект
Тогда позвольте Eclipse работать.
Иногда это решает проблему. В противном случае весьма вероятно, что где-то в ваших ресурсах есть ошибка.
Для создания этого файла Eclipse собирает идентификаторы, которые вы объявили в своих XML-файлах с помощью @ + id, а также имена макетов, имена изображений, имена строк, ...
Допустим, у меня есть XML-файл со следующим содержанием:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
>
<ListView android:id="@+id/ListView01"
/>
</RelativeLayout>
Я сохраняю его в res / layout /. Затем автоматически создается R.id.ListView01.
Возможно, вы захотите взглянуть на приложение Notebook Sample и на то, как оно организовано. По крайней мере, так я познакомился с организацией андроидов.
Похоже, что project / res / layout / main.xml содержит конструкции, которые приводят к генерации id в ] R.java . (Я не ограничиваю их источник только этим XML-файлом.)
Особо ищите android: id в различных виджетах (я думаю, они называются), например TableLayout , TextView , EditText и т. Д. Будет соответствующий
public static final class id
{
public static final int x=0x7f05006;
public static final int y=0x7f05000;
public static final int z=0x7f0500c;
.
.
.
}
, где x, y, z соответствуют ( TableLayout , TextView , EditText и т. Д.) Идентификатор, закодированный сразу после конструкции «@ + id /» в XML-файле (а инициализированное значение в R.java генерируется волшебным образом - -вы не должны об этом беспокоиться).
Спасибо всем, кто внес свой вклад.