Изменить состояние элемента в программе просмотра с нумерацией страниц - PullRequest
0 голосов
/ 07 февраля 2020

Я реализовал вид рециркулятора с нумерацией страниц. В моем элементе списка есть информация и значок избранного для набора, похожего на элемент в отличие от него. При установке, как, значок будет включен в противном случае отключен. Он работает правильно, но когда я прокручиваю, он снова показывает отключенный значок. Я исследовал и нашел следующие методы переопределения, которые я обычно использовал для обычного представления переработчика.

@Override
public long getItemId(int position) {
            return position;
}

@Override
public int getItemViewType(int position) {
       return position;
}

Но мой вид рециркулятора с нумерацией страниц, и я использовал следующие методы.

override fun getItemId(position: Int): Long {
    return position.toLong()
}

override fun getItemViewType(position: Int): Int {
    return if (position == assistanceArrayList.size - 1 && isLoadingAdded) LOADING else ITEM
}

Помогите мне предотвратить изменение состояния при прокрутке вида рециркулятора.

1 Ответ

2 голосов
/ 07 февраля 2020

Я нашел решение об изменении состояния элемента списка при прокрутке вида прокрутки. Я установил Nestedscrollview родительского представления утилита и добавил нижнюю строку при настройке адаптера.

adapter!!.setHasStableIds(true)

В моем фрагменте я добавил следующую строку

ViewCompat.setNestedScrollingEnabled(mFragmentAssistanceBinding!!.recyclerViewAssistanceLog, false)

Проблема была решена. Я надеюсь, что это поможет другим. :)

...