public static class RecyclerBinderConfiguration.Builder
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static LayoutThreadPoolConfiguration |
DEFAULT_THREAD_POOL_CONFIG |
static int |
UNSET |
public static final LayoutThreadPoolConfiguration DEFAULT_THREAD_POOL_CONFIG
public static final int UNSET
public RecyclerBinderConfiguration.Builder idleExecutor(LayoutHandlerFactory idleExecutor)
idleExecutor
- This determines the thread on which the Component layout calculation will
be processed in. Null means that the computation will be done in the background thread.public RecyclerBinderConfiguration.Builder invalidStateLogParamsList(java.util.List<ComponentLogParams> invalidStateLogParamsList)
public RecyclerBinderConfiguration.Builder threadPoolConfiguration(LayoutThreadPoolConfiguration threadPoolConfiguration)
public RecyclerBinderConfiguration.Builder rangeRatio(float rangeRatio)
rangeRatio
- Ratio to determine the number of components before and after the androidx.recyclerview.widget.RecyclerView
's total number of currently visible items to
have their Component layout computed ahead of time.
e.g total number of visible items = 5 rangeRatio = 10 total number of items before the 1st visible item to be computed = 5 * 10 = 50 total number of items after the last visible item to be computed = 5 * 10 = 50
public RecyclerBinderConfiguration.Builder isCircular(boolean isCircular)
isCircular
- If true, the underlying RecyclerBinder will have a circular behaviour.
Note: circular lists DO NOT support any operation that changes the size of items like
insert, remove, insert range, remove rangepublic RecyclerBinderConfiguration.Builder wrapContent(boolean isWrapContent)
isWrapContent
- If true, the underlying RecyclerBinder will measure the parent height by
the height of children if the orientation is vertical, or measure the parent width by the
width of children if the orientation is horizontal.public RecyclerBinderConfiguration.Builder hasDynamicItemHeight(boolean hasDynamicItemHeight)
public RecyclerBinderConfiguration.Builder useBackgroundChangeSets(boolean useBackgroundChangeSets)
SectionTree.Target#supportsBackgroundChangeSets()
for more info.public RecyclerBinderConfiguration.Builder hScrollAsyncMode(boolean hScrollAsyncMode)
RecyclerBinder.Builder#hscrollAsyncMode(boolean)
for more info.public RecyclerBinderConfiguration.Builder enableStableIds(boolean enableStableIds)
public RecyclerBinderConfiguration.Builder enableItemPrefetch(boolean enableItemPrefetch)
public RecyclerBinderConfiguration.Builder canInterruptAndMoveLayoutsBetweenThreads(boolean isEnabled)
public RecyclerBinderConfiguration.Builder componentsConfiguration(ComponentsConfiguration componentsConfiguration)
public RecyclerBinderConfiguration.Builder changeSetThreadHandler(RunnableHandler changeSetThreadHandler)
public RecyclerBinderConfiguration.Builder isReconciliationEnabled(boolean isEnabled)
public RecyclerBinderConfiguration.Builder isLayoutDiffingEnabled(boolean isEnabled)
public RecyclerBinderConfiguration.Builder postToFrontOfQueueForFirstChangeset(boolean postToFrontOfQueueForFirstChangeset)
public RecyclerBinderConfiguration.Builder componentWarmer(ComponentWarmer componentWarmer)
public RecyclerBinderConfiguration.Builder lithoViewFactory(LithoViewFactory lithoViewFactory)
public RecyclerBinderConfiguration.Builder errorEventHandler(ErrorEventHandler errorEventHandler)
@Deprecated public RecyclerBinderConfiguration.Builder estimatedViewportCount(int estimatedViewportCount)
public RecyclerBinderConfiguration build()