Как отобразить список ресурсов
Я хотел бы отобразить все списки ресурсов в списке, чтобы пользователь мог выбрать один из них. Есть ли способ перебрать все элементы R.drawable, поэтому мне не нужно жестко кодировать их в мою программу?
Ответы
Ответ 1
Используя метод getFields в классе drawable, вы можете выполнить итерацию по всему списку чертежей.
Field[] drawables = android.R.drawable.class.getFields();
for (Field f : drawables) {
try {
System.out.println("R.drawable." + f.getName());
} catch (Exception e) {
e.printStackTrace();
}
}
Ссылка: http://www.darshancomputing.com/android/1.5-drawables.html
Ответ 2
Если вы заглянете в свой сгенерированный объект R.drawable, вы увидите, что идентификаторы смежны, в моем случае (и, вероятно, ваши), начиная с 0x7f020000. Поскольку они, похоже, отсортированы по альфе, вы могли бы добавить фиктивные изображения AAAAAAA.png и ZZZZZZ.png и выполнить итерацию между двумя идентификаторами исключительно.
Я не могу подтвердить ваши причины для этого, но я считаю, что это сработает.