背景:在做微信红包打开动画的场合使用了如下动画:
NSTimeInterval duration = 0.5;
UIViewAnimationTransition transition = UIViewAnimationTransitionFlipFromRight ;
[UIView beginAnimations:nil context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:duration];
[UIView setAnimationTransition:transition forView:imageView cache:NO];
[UIView setAnimationRepeatCount:30.f];
[UIView commitAnimations];
现象:当点击红包的同时获取红包接口中,成功回调和失败回调我都加了:[UIView setAnimationsEnabled:NO]; 当红包打开后,发现系统转场动画都消失。
解决办法:当把[UIView setAnimationsEnabled:NO]; 更改为[imageView.layer removeAllAnimations];时问题解决,系统动画不再丢失。
后来在网上找到了另一些引起系统动画丢失的问题: iOS中动画全部失效的问题
希望遇到类似的伙伴们有个参考。
网友评论