我有一个动画,当按下一个按钮时,应该跳起来,然后向下漂浮。我用动画一个让它浮起来,第二个让它降下来。无论我做什么,第一个动画都没有浮动,它只是传送到顶部,第二个动画完全应该是它应该的。
这就是我所拥有的:
//This animation does not respond to its duration.
[UIView animateWithDuration:.5 delay:0.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
CGRect f = imageView.frame;
f.origin.y -= 40;
imView.frame = f;
}
completion:nil];
[UIView animateWithDuration:.7 delay:0.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
CGRect f = imageView.frame;
f.origin.y += 40;
imView.frame = f;
}
completion:nil];
我有另一个问题,我希望通过动画改变图像,但它始终以我最后声明的图像开始。谢谢!
答案 0 :(得分:6)
你的第二个动画会覆盖第一个动画,因为它没有延迟。尝试从第一个动画的完成块开始第二个动画。
[UIView animateWithDuration:.5 delay:0.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
CGRect f = imageView.frame;
f.origin.y -= 40;
imView.frame = f;
}
completion:^{
[UIView animateWithDuration:.7 delay:0.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
CGRect f = imageView.frame;
f.origin.y += 40;
imView.frame = f;
}
completion:nil];
}];