1

UIImageViewに振り子アニメーションの基本重力効果を適用するのに問題があります。誰かが私がこのトラブルから抜け出すのを手伝ってくれる?

以下のソースコードを試してみました。しかし、その重力では適用されません。

- (void)swingPendulum {
 pendulum.layer.anchorPoint = CGPointMake(0.5,0);

[pendulum.layer setTransform:CATransform3DMakeRotation(-M_PI*3/4, 0, 0, 1)];
CABasicAnimation *needleAnim = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
needleAnim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
needleAnim.duration = 1;
needleAnim.repeatCount = 5;
needleAnim.autoreverses = YES;
// Setting fillMode means that, once the animation finishes, the needle stays in its end position.
needleAnim.fillMode = kCAFillModeForwards;
needleAnim.removedOnCompletion = YES;
needleAnim.toValue = [NSNumber numberWithFloat:M_PI*3/4];
 [pendulum.layer addAnimation:needleAnim forKey:nil];
}

実際には次のようなアニメーションが必要です...

これをチェックしてください:http://blog.ruben-martins.co.uk/2010/02/maya-tutorials-pendulum-animation.html

前もって感謝します。

4

1 に答える 1

0

空白の上部セクションを持つ画像があり、中央から開始し、回転させたい場合 (まだ試していません):

-(void) doAnimation {

    imgView.transform = CGAffineTransformMakeRotation(-0.7);
    [UIView animateWithDuration:4 delay:0 options:UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionAutoreverse animations:^{

        imgView.transform = CGAffineTransformMakeRotation(0.7);

    } completion:^{

        [self doAnimation];

    }]
于 2013-02-26T09:57:58.103 に答える