RefreshIndicatorState<T extends RefreshIndicator> class

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() {
   // TODO: implement 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) {
   // TODO: implement onOffsetChange
   if (!floating) {
     _scaleAnimation.value = offset / 80.0;
   }
   super.onOffsetChange(offset);
 }

 @override
 void resetValue() {
   // TODO: implement handleModeChange
   _scaleAnimation.value = 0.0;
   _offsetController.value = 0.0;
 }

 @override
 void dispose() {
   // TODO: implement dispose
   _scaleAnimation.dispose();
   _offsetController.dispose();
   super.dispose();
 }

 @override
 Future<void> endRefresh() {
   // TODO: implement endRefresh
   return _offsetController.animateTo(1.0).whenComplete(() {});
 }

 @override
Widget buildContent(BuildContext context, RefreshStatus mode) {
   // TODO: implement buildContent
   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

RefreshIndicatorState()

Properties

activity ScrollActivity
read-only, inherited
configuration RefreshConfiguration
read / write, inherited
context BuildContext
The location in the tree where this widget builds. [...]
read-only, inherited
floating ↔ dynamic
read / write, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
mode ↔ dynamic
read / write, inherited
mounted bool
Whether this State object is currently in a tree. [...]
read-only, inherited
refresher SmartRefresher
read / write, inherited
refresherState SmartRefresherState
read / write, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
widget → T
The current configuration. [...]
read-only, inherited

Methods

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. [...]
@mustCallSuper, @protected, 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 non-existent 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. [...]
@mustCallSuper, @protected, inherited
resetValue() → void
override
setState(VoidCallback fn) → void
Notify the framework that the internal state of this object has changed. [...]
@protected, 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