Pagedlistadapter не возвращает ни одного предмета в recyclerView - PullRequest
1 голос
/ 08 апреля 2019

Я пытаюсь использовать PagedListAdapter для пользовательского RecyclerView, ( ссылка здесь ).

В моем ViewModel при наблюдении за данными, полученными с помощью Observer(adapter::submitList), элемент не отображается.

При отладке этой строки:

productViewModel.allProducts.observe(this, Observer(adapter::submitList))

Я видел, что у объекта TiledPagedList есть мои предметы / см. Рисунок -> Изображение отладки

В моем классе репозитория:

fun getProductsFromDb(): LiveData<PagedList<Product>> {
        return LivePagedListBuilder(productDao.getProducts(), 20).build()
    }

В моем ViewModel классе:

allProducts = repository.getProducts()

В моем Activity классе:

adapter = CardStackAdapter()
        productViewModel = ViewModelProviders.of(this).get(ProductViewModel::class.java)
        productViewModel.allProducts.observe(this, Observer(adapter::submitList))
productViewModel.allProducts.value?.dataSource?.invalidate()
//productViewModel .allProducts.observe(this, PagedList(adapter::submitList))

Как я могу правильно применить элементы, извлеченные из моей БД, к моему recyclerView? (Примените то, что я вижу на TiledPagedList объекте)

1 Ответ

0 голосов
/ 09 апреля 2019

Я нашел решение.Моя ошибка состояла в том, чтобы переопределить getItemCount () в моем классе адаптера и получить размер списка в параметре, который не использовался.

...