0

CABasicAnimation を使用して Image 360​​ を時計回りに回転させています。使用しているコードは次のとおりです。

CALayer*    _caLayer = [CALayer layer];
_caLayer.contents = (id)_logo.CGImage;  
_caLayer.frame = CGRectMake(65,158, 180,55);
[self.view.layer addSublayer:_caLayer];
CABasicAnimation*   rotation;
rotation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
rotation.fromValue = [NSNumber numberWithFloat:0];    
rotation.toValue = [NSNumber numberWithFloat:((360*M_PI)/180)];
rotation.duration = 1.4f;
//rotation.beginTime = CACurrentMediaTime() +1;
rotation.repeatCount = 2.0;
rotation.fillMode = kCAFillModeForwards;
[_caLayer addAnimation:rotation forKey:@"360"]; 

アニメーションは正常に動作しています..しかし、私は一つのことを理解することはできません. 小さいサイズから画像のアニメーションを開始し、通常のサイズで終了します。いくつかの新聞が高速で回転し、フェードインし、最後に紙が画面に完全に表示されるように、映画で見たことがあります。私はそのようにしようとしています。やり方がわかりません、お願いします!

4

2 に答える 2

1

以下も使用できますが、魅力的に機能します

[UIView beginAnimations:@"fade in" context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
_imageView.alpha = 0.0;
_newImageView.alpha = 1.0;
[UIView commitAnimations];
于 2012-09-05T13:47:39.973 に答える
0

アニメーションの前に imageView フレームを設定します。[imageView setFrame: CGRectMake(your Frame)];

次に、ループなどを使用してアニメーションのフレームを増やし続けます..

于 2012-07-30T06:48:11.950 に答える