SliverReorderableGrid class
A sliver grid that allows the user to interactively reorder the grid items.
It is up to the application to wrap each child (or an internal part of the child) with a drag listener that will recognize the start of an item drag and then start the reorder by calling SliverReorderableGridState.startItemDragReorder. This is most easily achieved by wrapping each child in a ReorderableGridDragStartListener or a ReorderableGridDelayedDragStartListener. These will take care of recognizing the start of a drag gesture and call the grid state's start item drag method.
This widget's SliverReorderableGridState can be used to manually start an item reorder, or cancel a current drag that's already underway. To refer to the SliverReorderableGridState either provide a GlobalKey or use the static SliverReorderableGrid.of method from an item's build method.
See also:
- ReorderableGrid, a regular widget grid that allows the user to reorder its items.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- SliverReorderableGrid
Constructors
- SliverReorderableGrid({Key? key, required IndexedWidgetBuilder itemBuilder, required int itemCount, required ReorderCallback onReorder, required SliverGridDelegate gridDelegate, void onReorderStart(int index)?, bool reverse = false, ReorderItemProxyDecorator? proxyDecorator, bool autoScroll = true, Axis scrollDirection = Axis.vertical})
-
Creates a sliver grid that allows the user to interactively reorder its
items.
const
Properties
- autoScroll → bool
-
If auto scrolling is enabled. Should be disabled if associated scroll
physics are NeverScrollableScrollPhysics
final
- gridDelegate → SliverGridDelegate
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- itemBuilder → IndexedWidgetBuilder
-
Called, as needed, to build list item widgets.
final
- itemCount → int
-
The number of items in the list.
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- onReorder → ReorderCallback
-
A callback used by the list to report that a list item has been dragged
to a new location in the list and the application should update the order
of the items.
final
- onReorderStart → (void Function(int index)?)
-
A callback that is called when an item drag has started.
final
- proxyDecorator → ReorderItemProxyDecorator?
-
A callback that allows the app to add an animated decoration around
an item when it is being dragged.
final
- reverse → bool
-
Whether the scroll view scrolls in the reading direction.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scrollDirection → Axis
-
The Axis along which the scroll view's offset increases.
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → SliverReorderableGridState -
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
Static Methods
-
maybeOf(
BuildContext context) → SliverReorderableGridState? - The state from the closest instance of this class that encloses the given context.
-
of(
BuildContext context) → SliverReorderableGridState - The state from the closest instance of this class that encloses the given context.