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, double offAxisFraction: 0.0, bool useMagnifier: false, double magnification: 1.0, @required double itemExtent, ValueChanged<int> onSelectedItemChanged, bool clipToSize: true, bool renderChildrenOutsideViewport: false, @required List<Widget> children })
Constructs a list in which children are scrolled a wheel. Its children are passed to a delegate and lazily built during layout.
ListWheelScrollView.useDelegate({Key key, ScrollController controller, ScrollPhysics physics, double diameterRatio: RenderListWheelViewport.defaultDiameterRatio, double perspective: RenderListWheelViewport.defaultPerspective, double offAxisFraction: 0.0, bool useMagnifier: false, double magnification: 1.0, @required double itemExtent, ValueChanged<int> onSelectedItemChanged, bool clipToSize: true, bool renderChildrenOutsideViewport: false, @required ListWheelChildDelegate childDelegate })
Constructs a list in which children are scrolled a wheel. Its children are managed by a delegate and are lazily built during layout.
const

Properties

childDelegate ListWheelChildDelegate
A delegate that helps lazily instantiating child.
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
magnification double
null
final
offAxisFraction double
How much the wheel is horizontally off-center, as a fraction of its width. This property creates the visual effect of looking at a vertical wheel from its side where its vanishing points at the edge curves to one side instead of looking at the wheel head-on. [...]
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
useMagnifier bool
Whether to use the magnifier for the center item of the wheel.
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. [...]
override
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 DiagnosticsNode.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