GIfatahTH / animator

A Flutter library that makes animation easer. It allows for separation of animation setup from the User Interface.
BSD 3-Clause "New" or "Revised" License
227 stars 28 forks source link

Simply a question about it #17

Closed n8crwlr closed 5 years ago

n8crwlr commented 5 years ago

Hello,

this package is incredibly good 🥇

But, i am new to Dart, Flutter, animations and i have to invest much time to learn it.

With one widget, Animator, you can do all the available animation in Flutter.

Is that true, or morely just said because it sounds nice as description? I want to use flutter because of it's powerfull animations. Animator looks promising to me, so is it worth learning it first or is there much stuff which is not possible at all?

Thank you 👍

n8crwlr commented 5 years ago

My interests are at least to know if the following samples would be possible with Animator:

From https://github.com/mcrovero/rubber

rubber1

From https://github.com/iamSahdeep/liquid_swipe_flutter

liquid1

From https://github.com/xsahil03x/fancy_on_boarding

fancy1

GIfatahTH commented 5 years ago

Sorry for the lateness, I was a little bussy. Yes, you can do these animation and more. You can nest Animator widgets each with its tween, duration, and curve. If combined with CustomClipper and CustomPainter you can achieve very complex animation.

look at this example. https://github.com/GIfatahTH/animator/blob/master/example/lib/basic_animation_2/nested_animator.dart

n8crwlr commented 5 years ago

As a noob to flutter i had my very first days with animations and learned a bit about. Next days, i will try to use animator instead. Thx :+1:

n8crwlr commented 5 years ago

look at this example. https://github.com/GIfatahTH/animator/blob/master/example/lib/basic_animation_2/nested_animator.dart

running the example folder this minute i got Buttons for Basic Animation 0, 1 and 3 instead of 0, 1 and 2? But 3 looks like what i have asked for 💯 thx

I am guessing its simply a typo?

  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
        crossAxisAlignment: CrossAxisAlignment.center,
        children: <Widget>[
          RaisedButton(
            child: Text("Basic Animation 0"),
            onPressed: () => goto(BasicAnimation0(), context),
          ),
          RaisedButton(
            child: Text("Basic Animation 1"),
            onPressed: () => goto(BasicAnimation1(), context),
          ),
          RaisedButton(
            child: Text("Basic Animation 3"),
            onPressed: () => goto(MyCustomPainterAnimation(), context),
          ),
        ],
      ),
    );
  }
}