I am doing an UIImageView animation like so:
//////progressbar start
progressbar.animationImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"1.png"],
[UIImage imageNamed:@"2.png"],
[UIImage imageNamed:@"3.png"],
[UIImage imageNamed:@"4.png"],
[UIImage imageNamed:@"5.png"],
[UIImage imageNamed:@"6.png"],
[UIImage imageNamed:@"7.png"],
[UIImage imageNamed:@"8.png"],
[UIImage imageNamed:@"9.png"],
[UIImage imageNamed:@"10.png"],
[UIImage imageNamed:@"11.png"],
[UIImage imageNamed:@"12.png"],
[UIImage imageNamed:@"13.png"],
[UIImage imageNamed:@"14.png"],
[UIImage imageNamed:@"15.png"],
[UIImage imageNamed:@"16.png"],
[UIImage imageNamed:@"17.png"],
[UIImage imageNamed:@"18.png"],
[UIImage imageNamed:@"19.png"],
[UIImage imageNamed:@"20.png"],
[UIImage imageNamed:@"21.png"],
[UIImage imageNamed:@"22.png"],
[UIImage imageNamed:@"23.png"],
[UIImage imageNamed:@"24.png"],
[UIImage imageNamed:@"25.png"],
[UIImage imageNamed:@"26.png"],
[UIImage imageNamed:@"27.png"],
[UIImage imageNamed:@"28.png"],
[UIImage imageNamed:@"29.png"],
[UIImage imageNamed:@"30.png"],
[UIImage imageNamed:@"31.png"],
[UIImage imageNamed:@"32.png"],
[UIImage imageNamed:@"33.png"],
[UIImage imageNamed:@"34.png"],
[UIImage imageNamed:@"35.png"],
[UIImage imageNamed:@"36.png"],
[UIImage imageNamed:@"37.png"],
[UIImage imageNamed:@"38.png"],
[UIImage imageNamed:@"39.png"],
[UIImage imageNamed:@"40.png"],
[UIImage imageNamed:@"41.png"],
[UIImage imageNamed:@"42.png"], nil];
progressbar.animationDuration = 5.00;
progressbar.animationRepeatCount = 0;
[progressbar startAnimating];
Now I need to pause it so once the user clicks the button the images will not animate and will stay on the current image.
I got this code off the web to pause it,
UIView *viewBeingAnimated = //your view that is being animated
viewBeingAnimated.frame = [[viewBeingAnimated.layer presentationLayer] frame];
[viewBeingAnimated.layer removeAllAnimations];
//when user unpauses, create new animation from current position.
Will that code work? Also how would I then unpause it from the current image?
I also tried to use this code and it didn't work.
Instead you can use the code provided by apple in the following link to pause and resume your animation.
http://developer.apple.com/library/ios/#qa/qa1673/_index.html
To get the CALayer to pass to the pauseLayer function, you can use the following code.
CALayer *player = progressbar.layer;
[self pauseLayer:player];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With