У меня есть Activity, который имеет переменную position
, которая исходит из другого действия. Я обрабатываю эту переменную Intent
, как показано ниже. (На самом деле position
позиция ListView из другой деятельности.) и значение position
переменных от 0 до 200Создание динамического источника R.drawable и ImageView
Я взял мой Extra, затем назначил его в строку, чем я проанализирован его в Integer. Это нормально и легко для меня и работает.
Intent i = getIntent();
String position = i.getStringExtra("POSITION");
int position_to_int = Integer.parseInt(position);
Но моя проблема связана с ресурсами.
Просто хочу разместить изображение для моего LinearLayout динамически. У меня есть некоторые флаги стран, и они названы в формате, как 0.gif
, 1.gif
, 2.gif
, 3.gif
...
Моя идея использует значение position
переменной для этой цели.
но когда я пытаюсь использовать position_to_int
переменная для имени флага, нормально возвращающая ошибка Eclipse. Поскольку R.drawble.XXX
значения хранения в R.java
ImageView imageView = new ImageView(this);
// setting image resource
imageView.setImageResource(R.drawable.position_to_int);
Как я могу использовать position_to_int
переменную, чтобы показать ImageView динамически?
Можете ли вы изменить имена переменных на имена переменных моего вопроса. (Я говорю о position_to_int) – hakiko
@hakiko Просто позвоните getDrawableResourceByName (position_to_int), когда вам нужно извлечь. Хотя, если вы не можете понять, как использовать предоставленный мной код, вам стоит подумать о приобретении Java-книги, прежде чем работать с Android. –
Это не работает, потому что целочисленное значение недопустимо Имя ресурса –