最簡單的方法是用一根手指移動圖像,用兩根手指滾動視圖。
如果你在iOS 5,這是超級簡單:
self.scrollView.panGestureRecognizer.minimumNumberOfTouches = 2;
如果你想支持舊版iOS,你必須做一些更多的工作:
for (UIGestureRecognizer *gesture in self.scrollView.gestureRecognizers){
if ([gesture isKindOfClass:[UIPanGestureRecognizer class]]){
((UIPanGestureRecognizer *)gesture).minimumNumberOfTouches = 2;
}
}
如果你想爲兩者使用單指手勢,有幾種方法可以做到這一點。您可以將UIPanGestureRecognizer
附加到每個圖像視圖。您可能需要使用requireGestureRecognizerToFail:
消息來告訴滾動視圖自己的UIPanGestureRecognizer
才能使用圖像視圖識別器。
另一種方法是將滾動視圖的UIPanGestureRecognizer
的委託設置爲您創建的實現gestureRecognizer:shouldReceiveTouch:
方法的對象。在該方法中,您可以檢查觸摸的視圖是否是您的圖像視圖之一。如果是,則返回NO
以防止滾動視圖的平移手勢識別器激活。
非常感謝! – 2012-02-17 09:14:48