Sobes.tech
Middle+

Welche Methoden muss eine von PagingSource ererbte Klasse in der Paging 2-Bibliothek überschreiben?

sobes.tech KI

Antwort von AI

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

    /**
     * Datenanfrage für die Seite.
     * loadParams enthält den Schlüssel der Seite und die Anzahl der zu ladenden Elemente.
     * Gibt LoadResult zurück: Page (Erfolg) oder Error (Fehler).
     */
    abstract fun load(params: LoadParams<Key>): LoadResult<Key, Value>

    /**
     * Holt den Schlüssel für die nächste Seite bei Invalidation von PagingSource.
     * anchorPosition - Position des Elements, das vom Benutzer gesehen wird.
     * Gibt den Schlüssel für das Laden der nächsten Seite zurück oder null, wenn kein Laden erforderlich ist.
     */
    abstract fun getRefreshKey(state: PagingState<Key, Value>): Key?
}