Nikolay Kolomiytsev
Nikolay Kolomiytsev

Reputation: 525

How to change animation speed when is playing?

I have Animation and i need to change duration or speed in run. How to do this?

 Animation fadeIn = new AlphaAnimation(1, 0);
 fadeIn.setInterpolator(new AccelerateInterpolator()); //add this
 fadeIn.setDuration(800);
 fadeIn.setFillEnabled(true);
 fadeIn.setFillAfter(true);

 bt1.startAnimation(fadeIn);

Upvotes: 2

Views: 2220

Answers (2)

Sweeper
Sweeper

Reputation: 274490

I think you need two animations with different speeds. After the first has finished, the second gets played.

Animation anim1 = new AlphaAnimation (1, 0.5F);
anim1.setDuration (600); //The slow part.
//set other things for anim1

Animation anim2 = new AlphaAnimation (0.5F, 0);
anim2.setDuration (200); //The fast part.
//set other things for anim2

Upvotes: 1

Bajji
Bajji

Reputation: 2393

You can use Interpolators to have a variable speed during animation. Example can be found here.

Upvotes: 1

Related Questions