1
我一直在四处搜寻,但是找不到解决我的特定问题的答案。在我的应用程序中,我有一个自定义UIView无限期地动画。这是一块海藻,动画非常微妙,让它看起来像是在水中晃动。我使用transform.rotation.z
和position
键上的CAKeyframeAnimation对象执行此操作。这些被添加到一个CAAnimationGroup,其被添加作为层到我UIView,像这样:旋转一个UIView,它已经带有旋转的动画效果
animGroup = [CAAnimationGroup animation];
animGroup.fillMode = kCAFillModeForwards;
[animGroup setAnimations:[NSArray arrayWithObjects:posAnim, rotateAnim, nil]];
animGroup.duration = prpAnim.duration;
animGroup.repeatCount = prpAnim.repeat;
animGroup.delegate = self;
[animGroup setValue:self forKey:[NSString stringWithFormat:@"paper.rot.pos.%d",objID]];
[self.layer addAnimation:animGroup forKey:[NSString stringWithFormat:@"rot.pos.%d",objID]];
我想在不干扰核心动画倾斜的iPad当进一步沿该UIView的图像(片海藻)。当它不是通过关键帧动画时,我可以做到这一点,但当我试图将两者结合起来时,它不起作用,我无法弄清楚。
我试过动画使用像这样的层:
CATransform3D rotatePiece3D = CATransform3DMakeRotation(-(tiltRadians), 0.0, 0.0, 1.0);
seaweedPiece.layer.transform = rotatePiece3D;
但是,这并不工作,要么 - 只有当动画组被关闭。这是一个2D应用程序,所以我只想让它左右倾斜时围绕z轴旋转。任何想法如何做到这一点?