我正在尝试动画UIView的帧变化,其中原点和大小都会发生变化。动画看起来并不流畅,并且具有弹性效果。我使用以下代码来做到这一点
[UIView
animateWithDuration:0.5
animations:^{
self.view.frame = newFrame;
}];
似乎大小首先变化非常快,然后原点随动画的指定持续时间而变化,最终导致弹性效果。如何让它看起来流畅?
答案 0 :(得分:12)
您可以尝试更改动画曲线,也可以尝试使用线性曲线。
dispatch_async(dispatch_get_main_queue(), ^{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
self.view.frame = newFrame;
[UIView commitAnimations];
});
答案 1 :(得分:3)
在单独设置每个子视图的帧变化动画时,它就变得神奇了。现在它的动画非常流畅。感谢。