我在 UICollectionView 中有一个简单的单元格图标摇动动画,类似于弹簧板编辑模式。动画在 iOS 6 中运行良好,但在 iOS 7 中无法运行。
这是示例代码。
- (void)startQuivering
{
CABasicAnimation *quiverAnim = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
float startAngle = (-1) * M_PI/180.0;
float stopAngle = -startAngle;
quiverAnim.fromValue = [NSNumber numberWithFloat:startAngle];
quiverAnim.toValue = [NSNumber numberWithFloat:3 * stopAngle];
quiverAnim.autoreverses = YES;
quiverAnim.duration = 0.12;
quiverAnim.repeatCount = HUGE_VALF;
float timeOffset = (float)(arc4random() % 100)/100 - 0.50;
quiverAnim.timeOffset = timeOffset;
CALayer *layer = self.layer;
[layer addAnimation:quiverAnim forKey:@"quivering"];
}
同样停止颤抖的动画。
- (void)stopQuivering
{
CALayer *layer = self.layer;
[layer removeAnimationForKey:@"quivering"];
}
在我的自定义 UICollectionViewCell 类中调用这些方法 applyLayoutAttributes: 方法,取决于长按手势和相关标志
我无法弄清楚这个问题,所以我需要开发人员的帮助。