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
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- ListWheelScrollView
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, double overAndUnderCenterOpacity = 1.0, required double itemExtent, double squeeze = 1.0, ValueChanged<
int> ? onSelectedItemChanged, bool renderChildrenOutsideViewport = false, Clip clipBehavior = Clip.hardEdge, HitTestBehavior hitTestBehavior = HitTestBehavior.opaque, String? restorationId, ScrollBehavior? scrollBehavior, 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, double overAndUnderCenterOpacity = 1.0, required double itemExtent, double squeeze = 1.0, ValueChanged<
int> ? onSelectedItemChanged, bool renderChildrenOutsideViewport = false, Clip clipBehavior = Clip.hardEdge, HitTestBehavior hitTestBehavior = HitTestBehavior.opaque, String? restorationId, ScrollBehavior? scrollBehavior, 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
- clipBehavior → Clip
-
The content will be clipped (or not) according to this option.
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
- hashCode → int
-
The hash code for this object.
no setterinherited
- hitTestBehavior → HitTestBehavior
-
Defines the behavior of gesture detector used in this Scrollable.
final
- itemExtent → double
-
Size of each child in the main axis.
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- magnification → double
-
The zoomed-in rate of the magnifier, if it is used.
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
- overAndUnderCenterOpacity → double
-
The opacity value that will be applied to the wheel that appears below and
above the magnifier.
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
- restorationId → String?
-
Restoration ID to save and restore the scroll offset of the scrollable.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scrollBehavior → ScrollBehavior?
-
A ScrollBehavior that will be applied to this widget individually.
final
- squeeze → double
-
The angular compactness of the children on the wheel.
final
- useMagnifier → bool
-
Whether to use the magnifier for the center item of the wheel.
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< ListWheelScrollView> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent 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.info}) → String -
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 ==(
Object other) → bool -
The equality operator.
inherited