我已经阅读了这里提出的许多 UIScrollView 问题,但没有一个回答这个问题。
我有一个 UIScrollView 可以缩放包含其他子视图的视图。当缩放发生时,我需要让视图的子视图移动到某些地方。我可以通过在 UIScrollView 的 layoutSubviews 方法中相应地更改它们的框架来实现这一点。
在 iOS 3.2 及更低版本上,这对于使用 zoomToRect:animated: 方法的手指缩放和实用缩放都非常有效。
在 iOS 4.0 或更高版本上,这仅适用于手指缩放。使用 zoomToRect:animated: 进行实用缩放时,对 layoutSubviews 的调用仅发生一次(在缩放结束时)。我需要在缩放期间多次调用此方法,以便我的子视图可以随着缩放进行平滑的位置变化。
所以总而言之,在 iOS 3.2 上,对 layoutSubviews 的调用会发生多次,而在 iOS 4.0 上,当您调用 zoomToRect:animated: 时,对 layoutSubviews 的调用只会发生一次。有谁知道我的问题的解决方案?