EpoxyPreloader

A scroll listener that prefetches view content.

To use this, create implementations of EpoxyModelPreloader for each EpoxyModel class that you want to preload. Then, use the EpoxyPreloader.with methods to create an instance that preloads models of that type. Finally, add the resulting scroll listener to your RecyclerView.

If you are using com.airbnb.epoxy.EpoxyRecyclerView then use com.airbnb.epoxy.EpoxyRecyclerView.addPreloader to setup the preloader as a listener.

Otherwise there is a RecyclerView.addEpoxyPreloader extension for easy usage.

Constructors

EpoxyPreloader
Link copied to clipboard
fun <P : PreloadRequestHolder> EpoxyPreloader(epoxyController: EpoxyController, requestHolderFactory: () -> P, errorHandler: PreloadErrorHandler, maxItemsToPreload: Int, modelPreloaders: List<EpoxyModelPreloader<*, *, out P>>)
EpoxyPreloader
Link copied to clipboard
fun <P : PreloadRequestHolder> EpoxyPreloader(adapter: EpoxyAdapter, requestHolderFactory: () -> P, errorHandler: PreloadErrorHandler, maxItemsToPreload: Int, modelPreloaders: List<EpoxyModelPreloader<*, *, out P>>)

Types

Companion
Link copied to clipboard
object Companion

Functions

cancelPreloadRequests
Link copied to clipboard
fun cancelPreloadRequests()
Cancels all current preload requests in progress.
onScrolled
Link copied to clipboard
open override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int)
onScrollStateChanged
Link copied to clipboard
open override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int)