Я много раз искал в Google и на этом веб-сайте, но не могу найти решения своего вопроса.
Во-первых, я понимаю, вы можете загружать изображения, используя что-то вроде:
int image = R.drawable.icon; (assuming there's a file called 'icon.png')
и я читал и пробовал использовать:
getResources().getIdentifier("resname", "restype", com.example.whatever);
Но вот что я не могу сделать: Я хочу иметь возможность иметь изображения в папке / res / drawable (я считаю, что это правильная папка), НЕ ЗНАЯ НИКАКОГО ИМЕНА ФАЙЛОВ, и загружать их динамически - во время выполнения.
Один (из много) вещей, которые я пробовал (что-то вроде):
int[] images = new int[numberOfImages];
for( 0 to numberOfImages )
{
images[i] =
getResources().getIdentifier("resname", "restype", com.example.whatever);
}
Это КАЖДОЙ возвращает 0, так что это не сработает
Я хотел бы получить имя и целочисленный идентификатор для каждого изображения в / res Папка / drawables. Можно ли это сделать, НЕ ЗНАТЬ НИКАКИХ ИМЕН ФАЙЛОВ?
[добавление после того, как вопрос был решен, чтобы помочь всем, кто может столкнуться с такой же проблемой в будущем. Это просто показывает, что это действительно работает.]
Class resources = R.drawable.class;
Field[] fields = resources.getFields();
String[] imageName = new String[fields.length];
int index = 0;
for( Field field : fields )
{
imageName[index] = field.getName();
index++;
}
int result =
getResources().getIdentifier(imageName[10], "drawable", "com.example.name");