PageStorageKey< T> class
A ValueKey that defines where PageStorage values will be saved.
Scrollables (ScrollPositions really) use PageStorage to save their scroll offset. Each time a scroll completes, the scrollable's page storage is updated.
PageStorage is used to save and restore values that can outlive the widget. The values are stored in a per-route Map whose keys are defined by the PageStorageKeys for the widget and its ancestors. To make it possible for a saved value to be found when a widget is recreated, the key's values must not be objects whose identity will change each time the widget is created.
For example, to ensure that the scroll offsets for the scrollable within
each MyScrollableTabView
below are restored when the TabBarView
is recreated, we've specified PageStorageKeys whose values are the
tabs' string labels.
TabBarView(
children: myTabs.map((Tab tab) {
MyScrollableTabView(
key: PageStorageKey<String>(tab.text), // like 'Tab 1'
tab: tab,
),
}),
)
Constructors
- PageStorageKey(T value)
-
Creates a ValueKey that defines where PageStorage values will be saved.
const
Properties
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
- value → T
-
The value to which this key delegates its operator==
final, inherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
toString(
) → String -
Returns a string representation of this object.
inherited
Operators
-
operator ==(
dynamic other) → bool -
The equality operator. [...]
inherited