#android
Есть массив из фото (из 25 штук): private int[] image_res = {R.drawable.res_null, R.drawable.res_null, R.drawable.res_null} Пытаюсь заменить фото на другое фото. Использую image_res.set(2, R.drawable.rees_ok); но пишет cannot resolve method set (int, int). Какую ошибку я допускаю?
Ответы
Ответ 1
Так у Вас же массив, а не коллекция. Установка значения в массив происходит так: image_res[2] = R.drawable.rees_ok;Ответ 2
вы путаете тип объекта с которым работаете. image_res[2] = R.drawable.rees_ok;Ответ 3
Ну так у массива нет такого метода ArrayListimage_res = new ArrayList<>(Arrays.asList(new int[]{R.drawable.res_null, R.drawable.res_null, R.drawable.res_null})) image_res.set(2, R.drawable.rees_ok); Ответ 4
Вы используете обычный массив для хранения своих фотографий, он не реализует такой метод. Самый топорный способ решить вашу задачу: for (int i = 0; i < image_res.length; i++) { if (image_res[i] == A) { A = B; } } Это плохой вариант. UPD: разумеется, это если индекс заменяемого элемента неизвестен. Используемый вами метод реализуется в классе ArrayList. Подумайте, не использовать ли в вашем случае такую структуру?
Комментариев нет:
Отправить комментарий