A performant interface for rendering sectioned lists, supporting the most handy features:
If you don't need section support and want a simpler interface, use
This is a convenience wrapper around
and thus inherits its props (as well as those of
ScrollView) that aren't explicitly listed
here, along with the following caveats:
PureComponentwhich means that it will not re-render if
propsremain shallow- equal. Make sure that everything your
renderItemfunction depends on is passed as a prop (e.g.
extraData) that is not
===after updates, otherwise your UI may not update on changes. This includes the
dataprop and parent component state.
keyprop on each item and uses that for the React key. Alternatively, you can provide a custom
Scrolls to the item at the specified
itemIndex (within the section)
positioned in the viewable area such that
viewPosition 0 places it at the top (and may be
covered by a sticky header), 1 at the bottom, and 0.5 centered in the middle.
viewOffset is a
fixed number of pixels to offset the final target position, e.g. to compensate for sticky
Note: cannot scroll to locations outside the render window without specifying the
Tells the list an interaction has occured, which should trigger viewability calculations, e.g.
waitForInteractions is true and the user has not scrolled. This is typically called by
taps on items or by navigation actions.
Displays the scroll indicators momentarily.
Improve this page by sending a pull request!