Package com.airbnb.epoxy.preload

Types

EpoxyModelPreloader
Link copied to clipboard
abstract class EpoxyModelPreloader<T : EpoxyModel<*>, U : ViewMetadata?, P : PreloadRequestHolder>(modelType: Class<T>, preloadableViewIds: List<Int>)
Describes how view content for an EpoxyModel should be preloaded.
EpoxyPreloader
Link copied to clipboard
A scroll listener that prefetches view content.
EpoxyPreloadException
Link copied to clipboard
class EpoxyPreloadException(errorMessage: String) : RuntimeException
ImageViewMetadata
Link copied to clipboard
open class ImageViewMetadata(scaleType: ImageView.ScaleType) : ViewMetadata
Default implementation of ViewMetadata for an ImageView.
Preloadable
Link copied to clipboard
interface Preloadable
Declares Views that should be preloaded.
PreloadErrorHandler
Link copied to clipboard
typealias PreloadErrorHandler = (Context, RuntimeException) -> Unit
PreloadRequestHolder
Link copied to clipboard
interface PreloadRequestHolder
This is responsible for holding details for a preloading request.
ViewData
Link copied to clipboard
class ViewData<out U : ViewMetadata?>(@IdRes() viewId: Int, @Px() width: Int, @Px() height: Int, metadata: U)
Data about an image view to be preloaded.
ViewMetadata
Link copied to clipboard
interface ViewMetadata

Functions

addEpoxyPreloader
Link copied to clipboard
fun <T : EpoxyModel<*>, U : ViewMetadata?, P : PreloadRequestHolder> RecyclerView.addEpoxyPreloader(epoxyController: EpoxyController, maxPreloadDistance: Int = 3, errorHandler: PreloadErrorHandler = { context, err -> if (!context.isDebuggable) throw err }, preloader: EpoxyModelPreloader<T, U, P>, requestHolderFactory: () -> P)
Helper to create and add an EpoxyPreloader to this RecyclerView.