Sobes.tech
Middle+

Jaké metody by měla přepisovat třída děděná od PagingSource v knihovně Paging 2?

sobes.tech AI

Odpověď od AI

abstract class PagingSource<Key : Any, Value : Any> : PagingSource<Key, Value>() {

    /**
     * Dotaz na data pro stránku.
     * loadParams obsahuje klíč stránky a počet položek k načtení.
     * Vrací LoadResult: Page (úspěch) nebo Error (chyba).
     */
    abstract fun load(params: LoadParams<Key>): LoadResult<Key, Value>

    /**
     * Získá klíč pro další stránku při neplatnosti PagingSource.
     * anchorPosition - pozice prvku, který je viditelný uživateli.
     * Vrací klíč pro načtení další stránky nebo null, pokud načítání není potřeba.
     */
    abstract fun getRefreshKey(state: PagingState<Key, Value>): Key?
}