繁体   English   中英

iPhone UIView动画重复问题

[英]iPhone UIView Animation problem with repeating

嗨,我只是在玩一些基本的UIView动画。 我将重复计数设置为100,这样我就可以看到它一遍又一遍地上下移动。我设置了一个过渡,可以将视图旋转180度

我可以看到我的视图在移动时旋转。 但是,经过多次重复后,视图仍在向上和向下移动,但不再旋转。 我看不出它为什么会在同一循环中停止旋转的原因?

下面是我的代码:

- (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];

}

谢谢

发生这种情况的原因是因为设置转换设置了animationRepeatAutoreverses。 因此,每次形状上升时,这仅算作1次重复。 而轮换方面已将其计为2次重复。

换句话说,形状上下移动是1次重复,耗时2秒。 现在,由于未将旋转设置为自动反转,因此旋转只需1秒即可完成1次重复。 因此,到形状恢复时,旋转部分已经进行了2次重复。 这意味着旋转将在100秒后结束,而向上和向下动画将在200秒后结束。

我希望我能够清楚地解释这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM