转载自 :https://elliotsomething.github.io/2016/12/25/iOS-%E4%B9%8B-%E5%9D%91%E7%B3%BB%E5%88%97/#%E5%9D%91-2
坑:
UIView 动画的坑
很多系统的API中动画效果都会带有animation的参数,比如: - (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated;。这些API的animation自带的动画都是transition动画,transition动画会另开一个动画线程,然后在主线程执行,这个时候如果你去进行UI操作,就会打断动画的执行,比如tableview的reloadData(可能会让动画卡顿)
另一种动画就是UIView的属性动画block,这种动画在主线程执行,不会被其他UI操作打断动画的执行
遇到的坑就是,下拉刷新的时候,使用的是系统自带的API:- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated; 如果数据比较复杂且tableview的reload比较频繁,就会导致animation动画很卡顿;
解决办法就是换成属性动画或者block动画;
动画的继承结构
CAAnimation{
CAPropertyAnimation{
CABasicAnimation{
CASpringAnimation
}
CAKeyframeAnimation
}
CATransition
CAAnimationGroup
}
952

被折叠的 条评论
为什么被折叠?



