Liczby całkowite są przechowywane w wygenerowanym pliku o nazwie R.java
w folderze gen
projektu. Próbka z niedawnym work-in-progress kopalni jest:
public final class R {
public static final class attr {
}
public static final class drawable {
public static final int cot_logo=0x7f020000;
public static final int cot_logo_small=0x7f020001;
public static final int ic_launcher=0x7f020002;
public static final int icon=0x7f020003;
}
public static final class id {
public static final int password=0x7f060001;
public static final int username=0x7f060000;
}
public static final class layout {
public static final int login_dlg=0x7f030000;
public static final int main=0x7f030001;
}
public static final class string {
public static final int app_name=0x7f050000;
}
public static final class xml {
public static final int config=0x7f040000;
}
}
Jak widać, nie ma wzór tego, jak są one generowane. Każda kategoria zasobów ma swój własny obszar do pracy.
Inną rzeczą, na którą należy zwrócić uwagę, jest to, że są generowane w kolejności, w jakiej występują w XML/folderach/etc. Na przykład, jeśli przeniesiesz niektóre widoki do pliku XML, musisz wyczyścić projekt, aby zregenerować pełny plik R.java
. W przeciwnym razie odwzorowania całkowite będą niepoprawne, a skończysz na (najprawdopodobniej) ClassCastException
lub co najmniej nieoczekiwanym zachowaniu.