ZdsShakeAnimation class

The shake animation for the widgets.

Use this widget as a container in StatefulWidget where shake animation is needed. This widget could be used where we need the users attention on some events.

class ShakeExample extends StatefulWidget {
  const ShakeExample({Key? key}) : super(key: key);

  @override
  State<ShakeExample> createState() => _ShakeExampleState();
}

class _ShakeExampleState extends State<ShakeExample> {
  late final _shakeKey = GlobalKey<ZdsShakeAnimationState>();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Shake Animation'),
      ),
      body: ZdsShakeAnimation(
        key: _shakeKey,
        shakeCount: 2,
        shakeOffset: 5,
        shakeDuration: const Duration(milliseconds: 350),
        child: ZdsButton.filled(
          child: const Text('Shake me!'),
          onTap: () {
            _shakeKey.currentState?.shake();
          },
        ),
      ),
    );
  }
}
Inheritance
Available extensions

Constructors

ZdsShakeAnimation({required Widget child, required double shakeOffset, Key? key, int shakeCount = 3, Duration shakeDuration = const Duration(milliseconds: 400), void onAnimationUpdate(AnimationStatus)?})
Constructs a ZdsShakeAnimation.
const

Properties

child Widget
A child widget to animate.
final
hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onAnimationUpdate → void Function(AnimationStatus)?
Animation status change call backs.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shakeCount int
No of repetitions.
final
shakeDuration Duration
Animation duration.
final
shakeOffset double
Horizontal shake offset ...<- Widget ->...
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() ZdsShakeAnimationState
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.
override
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