#android
#Android
Вопрос:
Я создаю игру и хочу, чтобы за препятствиями отображались картинки, я использую r.drawable… для создания изображений, но как мне нужно это изменить… с именем переменной
picturename = "clouds";
picture = new BitmapFactory().decodeResource(Constants.CURRENT_CONTEXT.getResources(), R.drawable.picturename);
Я понимаю, что это так не работает, но как бы мне заставить это работать.
Ответ №1:
Попробуйте это:
String resourceName = "clouds";
int resourceIdentifier = getResources().getIdentifier(resourceName, "drawable", Constants.CURRENT_CONTEXT.getPackageName());
Обновить:
Затем
picture = new BitmapFactory().decodeResource(Constants.CURRENT_CONTEXT.getResources(), resourceIdentifier);
Комментарии:
1. стал бы я тогда делать picture = new BitmapFactory().decodeResource(константы. CURRENT_CONTEXT.getResources(), R.drawable.resourceIdentifier ); ??
2. Обновлен ответ с использованием идентификатора
3. Хорошо, но там также написано «не удается разрешить метод getActivity()». Есть идеи?
4. Ну, вы можете использовать любую
Context
, чтобы получить имя пакета (обновлено)