Android Animations System for faster App Development

Sourabh Gupta
2 min readApr 19, 2020

More often than not, we as developers want to make the fastest and most efficient app out there. But at the same time, our designer sense want to choreograph and animate every single element on every single screen. But when it comes to coding those good looking animations. Suddenly, it becomes a horrible mess of listeners and callbacks riddled with Handler and Animators and what not.

So, what is the solution?

The answer is Smoother. Smoother is a central animations framework library that does all the heavy lifting for you to provide beautifully choreographed animations with one simple call.

What more?

What’s more is that it is fully customizable. Every single animation and choreography can be changed without much hassle and different animations can be provided to different views. Let’s see it in action-

SmoothAnimator animator = new SmoothAnimator(frame_layout,
demo_text,
new TransitionSet()
.addTransition(new Fade(Fade.IN)).setInterpolator(new Interpolator() {
@Override
public float getInterpolation(float input) {
return (input - 0.5f) * 2;
}
}).addTransition(new TranslateAnimation(100, TranslateAnimation.Direction.BOTTTOM))
, 300, null, null);
animator.prepare();
animator.startAnimation();

Now, to add a different animation for recyclerview, we will provide a new transition with

animator.addNewSmootherForChildViewGroup(recyclerview,transition)

and here is the result-

See, it is quite simple to add and choreograph full screen animations without having to worry too much about performance issue and without being stuck in callbacks and handlers.

Here is the github repository for Smoother. Try it, fork it, give a star and make animations fun again.

And don’t forget to clap if you like it.

https://github.com/sourabhgupta811/Smoother

--

--