我遇到了一些代码问题。 我打电话给3个UIView动画。如果我只运行两个,Ring和另一个一切正常。如果我将第一个" Ring"动画将重置为故事板中的原始位置,就像动画被取消或重置一样。
-(IBAction)home2{
{
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
CGRect frame = ring.frame;
frame.origin.x = 461;
frame.origin.y = 57;
[ring setFrame:frame];
[UIView commitAnimations];
}
{
UIImage *secondImage = [UIImage imageNamed:@"BigNames1.png"];
[UIView transitionWithView:words duration:0.0
options:UIViewAnimationOptionTransitionCrossDissolve animations:^{
words.image = secondImage;[[words superview] bringSubviewToFront:words];
}completion:nil];
}
{ UIImage *secondImage = [UIImage imageNamed:@"RealPhoto1.png"];
[UIView transitionWithView:imagesilhouette duration:1.0
options:UIViewAnimationOptionTransitionCrossDissolve animations:^{
imagesilhouette.image = secondImage;[[imagesilhouette superview] bringSubviewToFront:imagesilhouette];
}completion:nil];
}
}
我已尝试将每个分解为子程序以进行故障排除。同样,如果我运行3,第一次将在第3次启动时重置。我希望答案很简单。我是编码的新手,所以我敢打赌它更容易出错。
谢谢!
答案 0 :(得分:0)
尝试在UIViewAnimationOptionBeginFromCurrentState
动画中使用options
。