public final class VerticalScroll extends Component
ScrollView. TreeProps will only be set during @OnCreateInitialState
once, so updating TreeProps on the parent will not reflect on the VerticalScroll.
See also: HorizontalScroll for horizontal scrollability.
com.facebook.litho.widget.VerticalScrollSpec| Modifier and Type | Class and Description |
|---|---|
static class |
VerticalScroll.Builder |
Component.ContainerBuilder<T extends Component.ContainerBuilder<T>>ComponentLifecycle.MountType, ComponentLifecycle.RenderData, ComponentLifecycle.TransitionContainer| Modifier and Type | Method and Description |
|---|---|
boolean |
callsShouldUpdateOnMount() |
protected boolean |
canMeasure()
Whether this
ComponentLifecycle is able to measure itself according to specific size
constraints. |
protected boolean |
canPreallocate() |
protected void |
copyInterStageImpl(Component component) |
static VerticalScroll.Builder |
create(ComponentContext context) |
static VerticalScroll.Builder |
create(ComponentContext context,
int defStyleAttr,
int defStyleRes) |
protected void |
createInitialState(ComponentContext context) |
ComponentLifecycle.MountType |
getMountType()
This indicates the type of the
Object that will be returned by ComponentLifecycle.mount(com.facebook.litho.ComponentContext, java.lang.Object). |
protected StateContainer |
getStateContainer() |
boolean |
hasChildLithoViews()
Whether this
ComponentLifecycle mounts views that contain component-based content that
can be incrementally mounted e.g. |
protected boolean |
hasState() |
boolean |
isEquivalentTo(Component other)
Compares this component to a different one to check if they are the same
|
boolean |
isPureRender() |
VerticalScroll |
makeShallowCopy() |
protected void |
onBoundsDefined(ComponentContext c,
ComponentLayout layout)
Called after the layout calculation is finished and the given
ComponentLayout has its
bounds defined. |
protected Object |
onCreateMountContent(Context context)
Create the object that will be mounted in the
LithoView. |
protected void |
onMeasure(ComponentContext c,
ComponentLayout layout,
int widthSpec,
int heightSpec,
Size size) |
protected void |
onMount(ComponentContext context,
Object lithoScrollView)
Deploy all UI elements representing the final bounds defined in the given
ComponentLayout. |
protected void |
onUnmount(ComponentContext context,
Object lithoScrollView)
Unload UI elements associated with this component.
|
protected int |
poolSize() |
protected boolean |
shouldUpdate(Component _prevAbstractImpl,
Component _nextAbstractImpl)
Whether the component needs updating.
|
protected void |
transferState(StateContainer _prevStateContainer,
StateContainer _nextStateContainer)
|
bindDynamicProp, canResolve, clearCachedLayout, getCommonProps, getDynamicProps, getEventDispatcher, getHandle, getId, getKey, getScopedContext, getSimpleName, getSimpleNameDelegate, hasBackgroundSet, hasClickHandlerSet, measure, measureMightNotCacheInternalNode, recordEventTrigger, registerWorkingRange, retrieveValue, setScopedContext, updateInternalChildState, willRenderacceptTriggerEvent, applyPreviousRenderData, createMountContent, dispatchErrorEvent, dispatchErrorEvent, dispatchOnEnteredRange, dispatchOnEvent, dispatchOnExitedRange, getEventTrigger, getEventTrigger, getExtraAccessibilityNodeAt, getExtraAccessibilityNodesCount, getTreePropsForChildren, hasAttachDetachCallback, implementsAccessibility, implementsExtraAccessibilityNodes, isLayoutSpecWithSizeSpecCheck, isMountSizeDependent, needsPreviousRenderData, newEventHandler, newEventTrigger, onAttached, onBind, onCreateLayout, onCreateLayoutWithSizeSpec, onCreateMountContentPool, onCreateTransition, onDetached, onError, onLoadStyle, onMeasureBaseline, onPopulateAccessibilityNode, onPopulateExtraAccessibilityNode, onPrepare, onShouldCreateLayoutWithNewSizeSpec, onUnbind, populateTreeProps, recordRenderData, resolve, shouldAlwaysRemeasure, shouldUseGlobalPoolprotected StateContainer getStateContainer()
getStateContainer in class Componentpublic boolean isEquivalentTo(Component other)
ComponentThis is used to be able to skip rendering a component again. We avoid using the Object.equals(Object) so we can optimize the code better over time since we don't have to
adhere to the contract required for a equals method.
isEquivalentTo in interface Equivalence<Component>isEquivalentTo in class Componentother - the component to compare toprotected void copyInterStageImpl(Component component)
copyInterStageImpl in class Componentpublic VerticalScroll makeShallowCopy()
makeShallowCopy in class Componentprotected void createInitialState(ComponentContext context)
createInitialState in class ComponentLifecycleprotected void onMeasure(ComponentContext c, ComponentLayout layout, int widthSpec, int heightSpec, Size size)
onMeasure in class ComponentLifecycleprotected boolean canMeasure()
ComponentLifecycleComponentLifecycle is able to measure itself according to specific size
constraints.canMeasure in class ComponentLifecycleprotected void onBoundsDefined(ComponentContext c, ComponentLayout layout)
ComponentLifecycleComponentLayout has its
bounds defined. You can use ComponentLayout.getX(), ComponentLayout.getY(),
ComponentLayout.getWidth(), and ComponentLayout.getHeight() to get the size and
position of the component in the layout tree.onBoundsDefined in class ComponentLifecyclec - The Context used by this component.layout - The ComponentLayout with defined position and size.protected Object onCreateMountContent(Context context)
ComponentLifecycleLithoView.onCreateMountContent in class ComponentLifecyclecontext - The Context to be used to create the content.protected void onMount(ComponentContext context, Object lithoScrollView)
ComponentLifecycleComponentLayout. Return either a Drawable or a View or null to be
mounted.onMount in class ComponentLifecyclecontext - The ComponentContext to mount the component into.protected void onUnmount(ComponentContext context, Object lithoScrollView)
ComponentLifecycleonUnmount in class ComponentLifecyclecontext - The Context for this mount operation.lithoScrollView - The Drawable or View mounted by this component.protected boolean shouldUpdate(Component _prevAbstractImpl, Component _nextAbstractImpl)
ComponentLifecycleFor layout components, the framework will verify that none of the children of the component need updating, and that both components have the same number of children. Therefore this method just needs to determine any changes to the top-level component that would cause it to need to be updated (for example, a click handler was added).
For mount specs, the framework does nothing extra and this method alone determines whether the component is updated or not.
shouldUpdate in class ComponentLifecycle_prevAbstractImpl - the previous component to compare against._nextAbstractImpl - the component that is now in use.public ComponentLifecycle.MountType getMountType()
ComponentLifecycleObject that will be returned by ComponentLifecycle.mount(com.facebook.litho.ComponentContext, java.lang.Object).getMountType in class ComponentLifecycleComponentLifecycle.MountTypeprotected int poolSize()
poolSize in class ComponentLifecycleprotected boolean canPreallocate()
canPreallocate in class ComponentLifecyclepublic boolean hasChildLithoViews()
ComponentLifecycleComponentLifecycle mounts views that contain component-based content that
can be incrementally mounted e.g. if the mounted view has a LithoView with incremental mount
enabled.hasChildLithoViews in class ComponentLifecyclepublic boolean callsShouldUpdateOnMount()
callsShouldUpdateOnMount in class ComponentLifecyclepublic boolean isPureRender()
isPureRender in class ComponentLifecycleprotected boolean hasState()
hasState in class ComponentLifecycleprotected void transferState(StateContainer _prevStateContainer, StateContainer _nextStateContainer)
ComponentLifecycletransferState in class ComponentLifecyclepublic static VerticalScroll.Builder create(ComponentContext context)
public static VerticalScroll.Builder create(ComponentContext context, int defStyleAttr, int defStyleRes)