Sobes.tech
Middle+

¿Qué métodos debe sobrescribir una clase heredada de PagingSource en la biblioteca Paging 2?

sobes.tech AI

Respuesta de la IA

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

    /**
     * Solicitud de datos para la página.
     * loadParams contiene la clave de la página y la cantidad de elementos a cargar.
     * Devuelve LoadResult: Page (éxito) o Error (error).
     */
    abstract fun load(params: LoadParams<Key>): LoadResult<Key, Value>

    /**
     * Obtiene la clave para la siguiente página al invalidar PagingSource.
     * anchorPosition - posición del elemento visible para el usuario.
     * Devuelve la clave para cargar la siguiente página o null si no se requiere carga.
     */
    abstract fun getRefreshKey(state: PagingState<Key, Value>): Key?
}