我有一个视图,想要通过动画来缩放和平移到新的位置。我尝试使用以下代码实现:
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:kDurationForFullScreenAnimation];
[[self animatingView] setFrame:finalRect];
[UIView commitAnimations];
该代码的效果是,视图首先将其内容的大小更改为finalRect,然后将其转换到新位置。即缩放部分不参与动画。视图仅转换到新大小,然后进行平移。这个问题已经在其他几个主题中讨论过,但没有一个得出结论。虽然存在一种解决方法,即使用计时器并在计时器回调中每次设置框架,但它会影响性能。
什么是此问题的最合适解决方案,以及为什么在第一种情况下会出现这个问题?
谢谢。