Описание тега android-diffutils

Вопросы, связанные с служебным классом Android DiffUtil для вычисления разницы между двумя списками
2 ответа

Что не так с моей реализацией DiffUtil?

Обновление: одна из проблем решена: сейчас updateList решен, проблема была в том что я определил mAdapter как RecyclerView.Adapter вместо MyAdapter, Но теперь, хотя я получаю данные, в списке ничего не отображается, он пуст --------------------ОРИГИ…
0 ответов

RecyclerView DiffUtil необходимо обновить данные вручную?

Теперь я нахожу ошибку в моем проекте val diffCallback = diff.newInstance(list, newList) val diffResult = DiffUtil.calculateDiff(diffCallback) list.clear() list.addAll(newList) diffResult.dispatchUpdatesTo(this) это мой код сравнения в моем адаптере…
0 ответов

RecyclerView DiffUtil.dispatchUpdateTo Completed Notification

В настоящее время я использую класс DiffUtil для расчета и отправки обновлений для моего адаптера с помощью ListUpdateCallback следующее: inner class NotificationCallback(private val onInsert: () -> Unit) : ListUpdateCallback { override fun onIns…
1 ответ

Имеют ли значение hasStableIds и getItemId, если используется DiffUtil?

Мы используем DiffUtil.CalculateDiff с обычаем DiffUtil.Callback обрабатывать изменения в базовых данных. Идентичность наших элементов довольно сложна, и поэтому мы используем пользовательскую проверку на равенство areContentsTheSame а также areItem…
1 ответ

Исключения несоответствия Android DiffUtil при использовании пользовательских добавленных представлений, например, для пустых списков

Мне нужна помощь с адаптером DiffUtil для RecyclerView. Я сделал пользовательский адаптер с возможностью добавления пользовательских представлений, таких как представление загрузки или пустое представление и т. Д. Все отлично работает без использова…
4 ответа

RecyclerView прокрутка вверх с AsyncListDiffer не работает

Я использую RecyclerView с AsyncListDiffer (рассчитывает и анимирует различия между старыми и новыми элементами, все в фоновом потоке). У меня есть кнопка для сортировки списка. После того, как я сортирую это и повторно устанавливаю это к RecyclerVi…
8 ответов

ListAdapter не обновляет RecyclerView, если я отправляю тот же список с другим порядком элементов

Я использую RecyclerView с ListAdapter (который использует AsyncListDiffer для вычисления и анимации изменений при замене списка). Проблема в том, что если я submit() некоторый список, затем переупорядочить этот список, и submit() опять ничего не пр…
3 ответа

RecyclerView с DiffUtil (ListAdapter) блокирует поток пользовательского интерфейса

Я использую RecyclerView с ListAdapter (который использует AsyncListDiffer для вычисления и анимации изменений при замене списка). Проблема в том, что иногда, когда я звоню submit() чтобы обновить RecyclerView новыми данными, он блокирует весь поток…
1 ответ

Как обновить изображения в RecyclerView?

У меня есть RecyclerView изображений, которые пользователь может редактировать непосредственно в самом RecyclerView. Часть редактирования в порядке и работает хорошо. Это делается на растровом изображении, которое накладывает изображения, а затем со…
2 ответа

Почему мои diffutils не обновляют мою позицию в фоновом режиме

Я использую DiffUtils для обновления моего Recyclerview. Визуально работает, но нажатие на элемент возвращает мне позицию, которая не соответствует элементу, на котором я щелкнул Я использовал NotifyDataChange, который смог решить проблему с позицие…
0 ответов

Обновление адаптера представления переработчика с помощью утилит diff, работает неправильно при добавлении элемента

Я использую утилиты diff для обновления моего представления рециркулятора (текущие данные из модели представления возвращают список), у меня есть оформление элемента, которое добавляет большое количество отступов к последнему элементу в списке, но п…
1 ответ

Android Room - как получить только новые данные?

Что является результатом этого Dao метод после вставки некоторых messages в базе данных: @Query("SELECT * FROM messages") Flowable<List<Message>> getMessages(); 1 - ВСЕ messageсохраненные в базе данных будут выбрасываться после этого изм…
0 ответов

NoneAre ItemsTheSame of DiffUtils вызывается несколько раз при обновлении одного элемента?

Основное занятие public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final RecyclerView recyclerView = findV…
1 ответ

NoneGet ItemCount или onBindViewHolder не вызывается с помощью DiffUtil

Я обновляю свой список, когда пользователь достигает конца прокрутки, чтобы получить эффект нумерации страниц. override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) { super.onScrolled(recyclerView, dx, dy) if (!recyclerView.canScroll…
1 ответ

Android Как применить несколько фильтров с androidx.recyclerview.widget.DiffUtil

Я пытаюсь создать несколько фильтров для поиска данных в Recyclerview. Например, в список покупок я могу поместить фильтр как компьютеры, подпадающие под следующие критерии. Бренд = яблоко, размер экрана = от 10 до 13 дюймов, размер жесткого диска =…
1 ответ

Есть ли необходимость приостановить DiffUtilCallBack, используя сопрограммы, когда он используется для поиска или фильтрации списка?

fun updateItems( newItems: List<T>?, itemSame: (T, T) -> Boolean, contentSame: (T, T) -> Boolean ) { val diffResult = DiffUtil.calculateDiff(DiffCalc(this.items, newItems!!, itemSame, contentSame)) diffResult.dispatchUpdatesTo(this) item…
1 ответ

Интерфейс блокировки Diffutils при обновлении от 10 до 15 элементов в обзоре переработчика

final Handler handler = new Handler(); new Thread(new Runnable() { @Override public void run() { final DiffUtil.DiffResult diffResult = DiffUtil.calculateDiff(new DiffCb(oldItems, newItems)); handler.post(new Runnable() { @Override public void run()…
1 ответ

DiffUtil не обновляет RecyclerView

Я сделал адаптер для recyclerView и использовал DiffUtil, чтобы показать обновление списка более изящным способом. Я использовал Google CodeLabs для справки для этого. Но список не обновляется из следующего кода. Пожалуйста помоги class LaptopAdapte…
1 ответ

Почему адаптер Recyclerview onBindViewHolder вызывается более одного раза?

Я использую это руководство для реализации DiffUtil в моем обзоре утилит. Моя цель состоит в том, чтобы добавить один элемент в конец окна повторного просмотра, не перезагружая оставшуюся часть повторного просмотра. Я использовал fireStore addSnapsh…
1 ответ

Проблемы с DiffUtil: старый и новый список совпадают

Контекст:MainActivity запускает, создает список ItemObjectи позвоните ListFragment, Когда пользователь нажимает на button (который в MainActivity), он изменяет список, затем вызывает listFragment обновить его. Найдены проблемы:в update функция на li…