Popularity
4.5
Growing
Activity
0.0
Stable
384
11
42

Code Quality Rank: L4
Programming language: Java
License: GNU General Public License v3.0 or later
Tags: Animations    
Latest version: v1.0.2

QuickSand alternatives and similar packages

Based on the "Animations" category.
Alternatively, view QuickSand alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of QuickSand or a related project?

Add another 'Animations' Package

README

QuickSand

When showing a really enchanting explanatory animation to your users, but you know that after a while it'll get tedious and would stop users wanting to use your app. QuickSand is here to solve that problem.

Automatically manipulates the duration of animations depending on how many times the user has viewed them.

Simple Use

This is the setup needed to define how you change the animation duration between views:

Map<String, ViscosityInterpolator> modifiers = new HashMap<>();
modifiers.put("MyAnimationSetKey", TwoStepViscosityInterpolator.defaultInstance());
Quicksand.create(this, modifiers);

This is "trapping" an animation, meaning when this view is animated Quicksand will determine how many times it has been viewed and vary the animation duration according to the ViscosityInterpolator set above:

View myView = findViewById(R.id.my_view);
QuickSand.trap("MyAnimationSetKey", myView);
myView.animate().alpha();

Also works for multiple view animation:

 View myView = findViewById(R.id.my_view);
 View myOtherView = findViewById(R.id.my_view);
 View myThirdView = findViewById(R.id.my_view);
 QuickSand.trap("MyAnimationSetKey", myView, myOtherView, myThirdView);
 myView.animate().alpha();
 myOtherView.animate().alpha();
 myThirdView.animate().alpha();

Some viscosities already defined see the code here:

  • AllOrNothing - you can run your animation for X seconds X times and then 0 seconds after that
  • LinearChange - speed up the animation each time it is viewed until X views
  • TwoStep - run animation at X speed for X times then it will run at half X

See the demo project for more examples.

Adding to your project

dependencies {
    compile 'com.blundell:quicksand:1.0.2'
}

See it to believe it

15 second gif below
Notice how the animation duration decreases each time it is ran until eventually it does not animate (only touch feedback), Quicksand integration is done with 2 lines of code.
[demo](demo/demo_z1c.gif)

Download

Release Notes Get the latest version here

License

[Apache 2](LICENSE.txt)


*Note that all licence references and agreements mentioned in the QuickSand README section above are relevant to that project's source code only.