UIScrollView:每个尺寸/轴的缩放比例

时间:2012-09-02 10:04:43

标签: objective-c ios uiscrollview

使用UIScrollView进行缩放时,可见内容的宽高比似乎是不变的。 我想独立管理水平和垂直缩放。例如,如果手指水平触摸屏幕,则仅更改水平滚动。我注意到UIScrollView.zoomScale的类型是float(对于所有维度)。是否有可能解决这个问题?

详细信息: 我正在开发一个基于OpenGL ES的应用程序,我想使用UIKit的卷轴来获得漂亮的外观并节省实现它的时间。

1 个答案:

答案 0 :(得分:2)

我想在你的情况下,最好不要使用UIScrollView,而是自己在要转换的视图上设置UIPinchGestureRecognizer

GestureRecognizer将跟踪手指并决定是否(以及多少)在哪个维度进行缩放。基于此,您可以设置视图的transform属性。例如,一个宽度加倍但保持高度不变的变换矩阵将是CGAffineTransformMakeScale(2.0, 1.0)

为了利用UIScrollView的滚动,您可以将视图嵌入到UIScrollView中,并根据GestureRecognizer的回调方法相应地设置contentSizecontentOffset属性。