Ресурс с возможностью рисования с использованием переменной

Я хочу использовать переменную вместо R.drawable.myimage, потому что у меня есть база данных с именами изображений. Я получаю имя из базы данных, и я хочу использовать ресурс с указанным именем.

String flagimage = "R.drawable." + myHelper.getFlagImage(5);
int resourceId = Integer.parseInt(flagimage);
Bitmap flag = BitmapFactory.decodeResource(getResources(), resourceId);

Ответы

Ответ 1

Вы можете использовать имя ресурса, например

getIdentifier (String name, String defType, String defPackage);

getResources().getIdentifier("us","drawable","com.app");

Вышеуказанная функция вернет целочисленное значение, такое же, как R.drawable.us.

Вот как вы получаете доступ к именам ресурсов.

Ответ 2

Вы можете использовать этот код для получения идентификатора...

 Resources res = this.getResources(); 
 int resID = res.getIdentifier(imagename, "drawable", this.getPackageName());