使用90%的CPU的UIView动画 [英] UIView animation using 90%CPU
本文介绍了使用90%的CPU的UIView动画的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好我有动画这循环,但使用的是90%,我的iPhone的CPU处理,并且加热了电话。我做了什么错?
任何人都可以给我一些建议?
感谢
- (无效)nextAnimation:(浮点)$ P $ {pviousWidth//循环图片
imageViewTop.image = imageViewBottom.image;
imageViewBottom.image = [imageArray objectAtIndex:[imageArray数] - 1];[imageArray insertObject:imageViewBottom.image atIndex:0];
[imageArray removeLastObject]
imageViewTop.alpha = 1.0;
imageViewBottom.alpha = 0.0;[UIView的animateWithDuration:4.0
动画:^ {
imageViewTop.alpha = 0.0;
imageViewBottom.alpha = 1.0;
}
完成:^(BOOL完成){
[个体经营nextAnimation:stringsize.width];
}
];
解决方案
您得到了在你一个无限循环code。你必须有一个退出的条件,以避免无限循环。静态计数器是零,运行一次加1,如果计数器>ñ退出。
hi i have animation which loop but are using 90% of my iphone CPU processing and are heating up the phone. what have i done wrong ?
anybody can give me some advise ?
thanks
-(void)nextAnimation:(float)previousWidth {
//picture loop
imageViewTop.image = imageViewBottom.image;
imageViewBottom.image = [imageArray objectAtIndex:[imageArray count] - 1];
[imageArray insertObject:imageViewBottom.image atIndex:0];
[imageArray removeLastObject];
imageViewTop.alpha = 1.0;
imageViewBottom.alpha = 0.0;
[UIView animateWithDuration:4.0
animations:^{
imageViewTop.alpha = 0.0;
imageViewBottom.alpha = 1.0;
}
completion:^(BOOL completed){
[self nextAnimation:stringsize.width];
}
];
解决方案
You got a infinite loop in you code. You must have a quit condition to avoid infinite loop. A static counter is zero, and run one time add 1, if counter > n quit.
这篇关于使用90%的CPU的UIView动画的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文