Я боролся с RecyclerView в течение последних 2 дней.В отличие от всех прошлых периодов, я хочу провести пальцем, чтобы отключить функциональность.
Я следовал этому руководству
Единственное отличие, которое я здесь реализовал, - это вместо использованияпредопределенный массив для ввода, у меня есть ответ API для заполнения данных.Все, что кажется хорошим, когда я открываю окно утилизации, пункты заполняются так, как должны.В том порядке, в котором они должны быть.
Вот здесь и начинается самое интересное.Если я пытаюсь провести пальцем, чтобы отклонить первый элемент, я получаю ошибку IndexOutOfBounds.Это мило, поиск, я обнаружил, что некоторые решили установить новый список на основе первого списка, удалить элемент, а затем переназначить исходный список в новый список.notifyDataSetChanged () когда закончите.Больше нет ошибки, НО нет анимации представления рециркулятора, чтобы вывести 2-й элемент в верхнюю часть списка.всякий раз, когда notifyDataSetChanged () вызывается, список НЕ перемещается.Я прокручиваю вниз и назад, и предмет возвращается.Или так я подумал.
Поработав некоторое время с этим, я заметил, что хотя информация в первом элементе оказалась исходным первым элементом, она получила идентификатор второго элемента в списке ипоследний элемент в представлении теперь отсутствует.
Вот пример:
- text = Fox id = a
- text = Dog id = b
- text = Pig id = c
Я проведу пальцем, отклоняя 1 из списка, это то, что показывает пользовательский интерфейс
- text = Fox id = b
- text = Dog id = c
Множество кода для встраивания здесь и его ошибки при попытке сделать это, суть здесь https://gist.github.com/baggednismo/2840d0f777438d29673bc29096153970