Хорошо. после 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 и других сайтах.