ListWheelScrollView class

A box in which children on a wheel can be scrolled.

This widget is similar to a ListView but with the restriction that all children must be the same size along the scrolling axis.

When the list is at the zero scroll offset, the first child is aligned with the middle of the viewport. When the list is at the final scroll offset, the last child is aligned with the middle of the viewport

The children are rendered as if rotating on a wheel instead of scrolling on a plane.

Inheritance

Constructors

ListWheelScrollView({Key key, ScrollController controller, ScrollPhysics physics, double diameterRatio: RenderListWheelViewport.defaultDiameterRatio, double perspective: RenderListWheelViewport.defaultPerspective, @required double itemExtent, ValueChanged<int> onSelectedItemChanged, bool clipToSize: true, bool renderChildrenOutsideViewport: false, @required List<Widget> children })
Creates a box in which children are scrolled on a wheel.
const

Properties

children List<Widget>
List of children to scroll on top of the cylinder.
final
clipToSize bool
Whether to clip painted children to the inside of this viewport. [...]
final
controller ScrollController
Typically a FixedExtentScrollController used to control the current item. [...]
final
diameterRatio double
A ratio between the diameter of the cylinder and the viewport's size in the main axis. [...]
final
itemExtent double
Size of each child in the main axis. Must not be null and must be positive.
final
onSelectedItemChanged ValueChanged<int>
On optional listener that's called when the centered item changes.
final
perspective double
Perspective of the cylindrical projection. [...]
final
physics ScrollPhysics
How the scroll view should respond to user input. [...]
final
renderChildrenOutsideViewport bool
Whether to paint children inside the viewport only. [...]
final
hashCode int
The hash code for this object. [...]
read-only, inherited
key Key
Controls how one widget replaces another widget in the tree. [...]
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

createState() → _ListWheelScrollViewState
Creates the mutable state for this widget at a given location in the tree. [...]
createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree. [...]
inherited
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. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toDiagnosticsNode({String name, DiagnosticsTreeStyle style }) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by toStringDeep. [...]
inherited
toString({DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this object.
inherited
toStringDeep({String prefixLineOne: '', String prefixOtherLines, DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this node and its descendants. [...]
inherited
toStringShallow({String joiner: ', ', DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a one-line detailed description of the object. [...]
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited