Получить имя отрисовки после установки его в ImageView - PullRequest
0 голосов
/ 01 апреля 2019

Я на самом деле устанавливаю изображение в ImageView динамически из папки Drawable. У меня есть рабочий код для динамической установки изображения, но я не могу получить имя изображения / объекта рисования, которое в данный момент задается на изображении. Либо я должен получить имя для рисования, либо любой код, чтобы получить экземпляр каждого объекта с именем, которое я могу задать в ImageView. Любая помощь очень ценится!

Я искал и пробовал все ответы в StackOverflow.

Установите изображение динамически для изображения, а также получите имя этого изображения.

Ответы [ 2 ]

0 голосов
/ 01 апреля 2019

Хорошо. после 2 дней исследований и испытаний мне наконец удалось сделать то, что я планировал делать. Вот мой код, если кто-нибудь получит помощь от него.

ArrayList<Integer> array_fruits = new ArrayList<Integer>();
    int fruit_apricot = R.drawable.fruits_apricot;
    int fruit_apple = R.drawable.fruits_apple;
    int fruit_banana = R.drawable.fruits_banana;

.... и более

array_fruits.add(fruit_apple);
        array_fruits.add(fruit_apricot);
        array_fruits.add(fruit_banana);

... и более

// Рабочий код для создания номера между 30 и 1 (от 0 до 29 в массиве)

Random rand = new Random();
                    int num = rand.nextInt(30) + 1;
                    array_fruits.add(num);
                    itemImg.setImageDrawable(getResources().getDrawable(array_fruits.get(num)));
                    Log.e("num: ", num+"");
                    Toast.makeText(getApplicationContext(), num+"", Toast.LENGTH_LONG).show();

Я испробовал почти все решения, представленные на stackoverflow и других сайтах.

0 голосов
/ 01 апреля 2019

В качестве хорошей практики вы можете сохранить прорисовку в переменной и обновить представление изображения.

@DrawableRes int myDrawable;
iv.setImageDrawable(getResources().getDrawable(myDrawable));

Установка тега и получение из тега не идеальны, потому что он более удобен в обслуживании и отладке.

...