2011-01-20 9 views
0

こんにちは 私は基本的なUIViewアニメーションで遊んでいます。 は、私は私が私の見解を移動させながら、回転見ることができます私の見解180度iPhone UIView繰り返しのアニメーションの問題

を回転させるようにトランジションを設定 ..ので、私はそれを何度も上下に行くと見ることができる100の繰り返し回数を設定します。 ただし、いくつかの繰り返しの後に.. ビューはまだ上下に動いていますが、それはもはや回転していません。 同じループ内で回転が停止する理由はありませんか?トランスフォーム設定後をanimationRepeatAutoreversesを設定しているため起こる理由がある

- (void)viewDidLoad { 
[super viewDidLoad]; 
CGAffineTransform trans = CGAffineTransformMakeRotation(M_PI); 
Shape* shapeView = [[Shape alloc] initWithShapeName:@"test" frame:CGRectMake(100, 0, 50, 50)]; 


[self.view addSubview:shapeView]; 
[UIView beginAnimations:@"test animation" context:nil]; 
[UIView setAnimationDuration:1]; 
[UIView setAnimationRepeatCount:100]; 
shapeView.transform = trans; 
[UIView setAnimationRepeatAutoreverses:YES]; 
shapeView.frame = CGRectMake(100,300,50,50); 


[UIView commitAnimations]; 

[shapeView release]; 

}

おかげ

答えて

1

以下は私のコードです。したがって、形状が上がるたびに、それは1回の繰り返しとしてカウントされます。ローテーションアスペクトは、すでに2回繰り返してカウントされています。

つまり、下に移動して戻ってくる形状は1回の繰り返しで2秒かかります。今、回転が自動逆転に設定されていないので、回転は1回の繰り返しを完了するのに1秒しかかかりません。したがって、形状が元に戻るときに、回転部分はすでに2回繰り返されています。つまり、回転は100秒後に終了し、上下のアニメーションは200秒後に終了します。

私はそれを明確に説明することができたと思います。

+0

ありがとう、私は今どこが間違っていたのか分かります! – y62wang

関連する問題