BoundaryCallback для PagedList никогда не вызывается - PullRequest
0 голосов
/ 03 апреля 2019

Я создал базу данных комнат на моем устройстве, которая возвращает

// The Int type parameter tells Room to use a PositionalDataSource object.
@Query("SELECT * FROM Word ORDER BY id")
abstract fun getByFactory(): DataSource.Factory<Int, Word>

Этот вызов фабрики затем используется в моем хранилище, где я подключаю его с помощью borderCallback

val boundaryCallback = MyBoundaryCallback()
return wordDao.getByFactory().toLiveData(
   pageSize = 20,
   boundaryCallback = boundaryCallback
)

Мой обратный вызов границы является базовым и выглядит так

class MyBoundaryCallback() : PagedList.BoundaryCallback<Word>() {

    val int = 0;

    @MainThread
    override fun onItemAtFrontLoaded(itemAtFront: Word) {
        Timber.d("hello")
    }

    @MainThread
    override fun onZeroItemsLoaded() {
        Timber.d("hello")
    }

    @MainThread
    override fun onItemAtEndLoaded(itemAtEnd: Word) {
        Timber.d("hello")
    }
}

Проблема в том, что, хотя мой источник данных (база данных комнаты) не содержит записей, обратные вызовы границ не вызываются. У вас есть какие-либо подсказки, в чем может быть проблема?

...