RefreshIndicatorState<T extends RefreshIndicator> class
abstract
Internal Implementation of Head Indicator
you can extends RefreshIndicatorState for custom header,if you want to active complex animation effect
here is the most simple example
class RunningHeaderState extends RefreshIndicatorState<RunningHeader>
with TickerProviderStateMixin {
AnimationController _scaleAnimation;
AnimationController _offsetController;
Tween<Offset> offsetTween;
@override
void initState() {
_scaleAnimation = AnimationController(vsync: this);
_offsetController = AnimationController(
vsync: this, duration: Duration(milliseconds: 1000));
offsetTween = Tween(end: Offset(0.6, 0.0), begin: Offset(0.0, 0.0));
super.initState();
}
@override
void onOffsetChange(double offset) {
if (!floating) {
_scaleAnimation.value = offset / 80.0;
}
super.onOffsetChange(offset);
}
@override
void resetValue() {
_scaleAnimation.value = 0.0;
_offsetController.value = 0.0;
}
@override
void dispose() {
_scaleAnimation.dispose();
_offsetController.dispose();
super.dispose();
}
@override
Future<void> endRefresh() {
return _offsetController.animateTo(1.0).whenComplete(() {});
}
@override
Widget buildContent(BuildContext context, RefreshStatus mode) {
return SlideTransition(
child: ScaleTransition(
child: (mode != RefreshStatus.idle || mode != RefreshStatus.canRefresh)
? Image.asset("images/custom_2.gif")
: Image.asset("images/custom_1.jpg"),
scale: _scaleAnimation,
),
position: offsetTween.animate(_offsetController),
);
}
}
- Inheritance
- Mixed in types
Constructors
Properties
- activity → ScrollActivity?
-
no setterinherited
- configuration ↔ RefreshConfiguration?
-
getter/setter pairinherited
- context → BuildContext
-
The location in the tree where this widget builds.
no setterinherited
- floating ↔ dynamic
-
getter/setter pairinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- mode ↔ dynamic
-
getter/setter pairinherited
- mounted → bool
-
Whether this State object is currently in a tree.
no setterinherited
- refresher ↔ SmartRefresher?
-
getter/setter pairinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- widget → T
-
The current configuration.
no setterinherited
Methods
-
activate(
) → void -
Called when this object is reinserted into the tree after having been
removed via deactivate.
inherited
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
buildContent(
BuildContext context, RefreshStatus mode) → Widget -
inherited
-
deactivate(
) → void -
Called when this object is removed from the tree.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
didChangeDependencies(
) → void -
Called when a dependency of this State object changes.
inherited
-
didUpdateWidget(
covariant T oldWidget) → void -
Called whenever the widget configuration changes.
inherited
-
dispose(
) → void -
Called when this object is removed from the tree permanently.
inherited
-
disposeListener(
) → void -
inherited
-
endRefresh(
) → Future< void> -
override
-
initState(
) → void -
Called when this object is inserted into the tree.
inherited
-
needReverseAll(
) → bool -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onModeChange(
RefreshStatus? mode) → void -
mode change callback
inherited
-
onOffsetChange(
double offset) → void -
out of edge offset callback
inherited
-
readyToRefresh(
) → Future< void> -
when indicator is ready into refresh,it will call back and waiting for this function finish,then callback onRefresh
override
-
reassemble(
) → void -
Called whenever the application is reassembled during debugging, for
example during hot reload.
inherited
-
resetValue(
) → void -
override
-
setState(
VoidCallback fn) → void -
Notify the framework that the internal state of this object has changed.
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
-
toStringShort(
) → String -
A brief description of this object, usually just the runtimeType and the
hashCode.
inherited
-
update(
) → void -
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited