2つのビューがあり、コアアニメーションを使用して、各ビューのレイヤーをアニメーション化して2つのビューを切り替えたいと思います。私が欲しいアニメーションは提供されたもののようなものですがUIViewAnimationOptionTransitionFlipFromLeft
、私はそれを行うことができませんでした。レイヤーを180度回転させ、アニメーションが停止したら次のビューに移動します。これはどのように行うことができますか?
私は以下のようにコードを使用しました:
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform"];
self.view.layer.zPosition = 100;
CATransform3D transform = CATransform3DMakeRotation(M_PI, 0, 1, 0);
[animation setToValue:[NSValue valueWithCATransform3D:transform]];
[animation setDuration:.5];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]];
[animation setFillMode:kCAFillModeForwards];
[animation setRemovedOnCompletion:YES];
[animation setDelegate:self];
[self.view.layer addAnimation:animation forKey:@"test"];
デリゲートでは、次のビューに移動します。ただし、これはあまり意味がなく、アニメーションはデフォルトのアニメーションで提供されるほど活発ではありません。これはどのように達成できますか?