スプリング ボード編集モードと同様に、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:メソッドでこれらのメソッドを呼び出し、長押しジェスチャーと関連フラグに応じて
問題を把握できないため、開発者の助けが必要です。