2012-09-02 54 views
1

使用UIScrollView進行縮放時,看起來可見內容的縱橫比是恆定的。 我想獨立管理水平和垂直縮放。例如,如果手指水平觸摸屏幕,則僅更改水平滾動。我注意到UIScrollView.zoomScale的類型是float(完全是所有維度)。是否有可能解決這個問題?UIScrollView:每個尺寸/軸的縮放比例

詳情: 我工作在一個基於OpenGL ES應用程序,我想使用的UIKit的滾動了一個漂亮的外觀和節省時間實現一個。

回答

2

我想你的情況你最好不要使用UIScrollView,而是你自己設置UIPinchGestureRecognizer您想要轉換的視圖。

GestureRecognizer會跟蹤手指並決定是否(以及在多大程度上)縮放哪個維度。基於此,您可以設置您的視圖的transform屬性。舉例來說,使寬度加倍但保持高度不變的轉換矩陣將是CGAffineTransformMakeScale(2.0, 1.0)

要利用UIScrollView的滾動,然後將視圖嵌入到UIScrollView中,並根據GestureRecognizer的回調方法相應地設置contentSizecontentOffset屬性。