0

ビューを左から右に水平に回転させようとしています。だから私はCATransform3DMakeRotation回転を行うために使用しています。

ここに私のコードがあります、

[UIView beginAnimations:nil context:nil];

[UIView setAnimationDuration:1];

[UIView setAnimationDelay:0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];

newView.layer.transform = CATransform3DMakeRotation(M_PI/2,0,1.0,0.0);
[UIView commitAnimations];

このコードは本当に機能しますが、ビューを半分だけ回転させます..完全に回転させたいです。だから私はこのように値M_PI/2をに変更しましたM_PI

CATransform3DMakeRotation(M_PI,0,1.0,0.0);

しかし、この値では、私のビューはまったく回転しません。何か提案をください。

4

1 に答える 1

0
UIImageView *imageView = [[[UIImageView alloc] init] autorelease]; // Don't forget to release this! I added autorelease.
imageView.image = [UIImage imageNamed:@"photo1.png"];
imageView.frame = CGRectMake(0, 0, viewOutlet.frame.size.width, viewOutlet.frame.size.height);

[viewOutlet addSubview:imageView];

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
[UIView setAnimationDelay:0];


[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
viewOutlet.layer.anchorPoint = CGPointMake(0.0f, 0.5f);
viewOutlet.layer.transform =CATransform3DMakeRotation(M_PI,0,1.0,0.0);
[UIView commitAnimations];

** viewOutletはビュー アウトレットなので、IBOutlet することを忘れないでください。

于 2012-05-18T13:54:12.357 に答える