InViewNotifierCustomScrollView class Null safety

builds a CustomScrollView and notifies when the widgets are on screen within a provided area.

A CustomScrollView lets you supply slivers directly to create various scrolling effects, such as lists, grids, and expanding headers. For example, to create a scroll view that contains an expanding app bar followed by a list and a grid, use a list of three slivers: SliverAppBar, SliverList, and SliverGrid.



InViewNotifierCustomScrollView({Key? key, required List<Widget> slivers, List<String> initialInViewIds = const [], double endNotificationOffset = 0.0, VoidCallback? onListEndReached, Duration throttleDuration = const Duration(milliseconds: 200), Axis scrollDirection = Axis.vertical, required IsInViewPortCondition isInViewPortCondition, ScrollController? controller, ScrollPhysics? physics, bool reverse = false, bool? primary, bool shrinkWrap = false, Key? center, double anchor = 0.0})


child ScrollView
The widget that should be displayed in the InViewNotifier.
final, inherited
endNotificationOffset double
The distance from the bottom of the list where the onListEndReached should be invoked.
final, inherited
hashCode int
The hash code for this object.
@nonVirtual, read-only, inherited
initialInViewIds List<String>
The String list of ids of the child widgets that should be initialized as inView when the list view is built for the first time.
final, inherited
isInViewPortCondition IsInViewPortCondition
The function that defines the area within which the widgets should be notified as inView.
final, inherited
key Key?
Controls how one widget replaces another widget in the tree.
final, inherited
onListEndReached VoidCallback?
The function that is invoked when the list scroll reaches the end or the endNotificationOffset if provided.
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
scrollDirection Axis
The axis along which the scroll view scrolls.
final, inherited
throttleDuration Duration
The duration to be used for throttling the scroll notification. Defaults to 200 milliseconds.
final, inherited


createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
createState() → _InViewNotifierState
Creates the mutable state for this widget at a given location in the tree.
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
@protected, inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
toString({DiagnosticLevel minLevel =}) String
A string representation of this object.
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants.
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
toStringShort() String
A short, textual description of this widget.


operator ==(Object other) bool
The equality operator.
@nonVirtual, inherited

Static Methods

of(BuildContext context) InViewState?