UIViewに複数のトランスフォームを適用する方法について質問があります。たとえば、その中心点の周りのUIViewの回転をアニメーション化し、その外側の点を中心に回転させようとすると、2番目のアニメーションがすべて乱されます。指定したものとはまったく異なる方法で回転したり回転したりします。最初のアニメーションが2番目のアニメーションに影響しないようにするにはどうすればよいですか?2番目のアニメーションが再生されるときにはまだ存在しますか?シーケンシャルUIView変換
編集:ここにコードがあります。私は回転層になりたいので
CALayer *layer = view.layer;
CATransform3D aTransform = CATransform3DIdentity;
CGFloat zDistance = 2000;
aTransform.m34 = 1.0/-zDistance;
tileScrollView.layer.sublayerTransform = aTransform;
CGFloat subviewX = ((1/view.frame.size.width)*(view.frame.origin.x));
CGFloat subviewY = 0.5;
[self setAnchorPoint:CGPointMake(-subviewX, subviewY) forView:view];
CATransform3D bTransform = layer.transform;
CABasicAnimation *rotateAnim = [CABasicAnimation animationWithKeyPath:@"transform"];
rotateAnim.fromValue= [NSValue valueWithCATransform3D:bTransform];
bTransform = CATransform3DMakeRotation(-M_PI_2, 0, 1, 0);
rotateAnim.duration=0.2;
rotateAnim.toValue=[NSValue valueWithCATransform3D:bTransform];
layer.transform = bTransform;
[layer addAnimation:rotateAnim forKey:nil];
:
CALayer *layer = view.layer;
CATransform3D aTransform = CATransform3DIdentity;
CGFloat zDistance = 2000;
aTransform.m34 = 1.0/-zDistance;
scrollView.layer.sublayerTransform = aTransform;
CGFloat subviewX = 0.5;
CGFloat subviewY = 0.5;
[self setAnchorPoint:CGPointMake(subviewX, subviewY) forView:view];
CATransform3D bTransform = CATransform3DIdentity;
CABasicAnimation *rotateAnim = [CABasicAnimation animationWithKeyPath:@"transform"];
rotateAnim.fromValue= [NSValue valueWithCATransform3D:bTransform];
bTransform = CATransform3DRotate(aTransform,-20*M_PI/180, 1, 1, 0);
rotateAnim.duration=0.05;
rotateAnim.toValue=[NSValue valueWithCATransform3D:bTransform];
layer.transform = bTransform;
[layer addAnimation:rotateAnim forKey:nil];
今すぐ層が回転していることを、私は左画面の境界線の周りにそれを反転したい:まず、私はその周りのビューは、中心ポイントの回転します2番目のアニメーションの先頭にCATransform3D bTransform = CATransform3DIdentity
の代わりにCATransform3D bTransform = layer.transform
を置きますが、もう一度アニメーションを上げるだけです。
もう1つの同様の問題は、9つのサブビューを含むUIViewがあることですフリップアローンそれは毎秒中心点です。しかし、これらの9つのUIViewのスーパービューに変換を適用するたびに、サブビューのレイアウトが乱れてしまいます。誰もこれを防ぐ方法を知っていますか?どんな助けでも大歓迎です。前もって感謝します!
コードを表示します。 –
ビューをアニメーション化するにはいくつかの方法がありますので、私たちにあなたが何をしているのか分かりません。 –