我試圖通知UIScrollView
縮小超出其最小縮放限制,即將動畫回來時,但我發現它非常困難。有沒有辦法單獨使用delegate
方法,或者是否需要覆蓋UIScrollView's
觸摸處理?UIScrollView檢測捏縮放結束
4
A
回答
2
您可以使用UIScrollView的scrollViewDidZoom
委託方法來檢測它即將動畫回來的時刻。當視圖被捏住時,您會看到scrollView.zoomScale
降至scrollView.minimumZoomScale
以下。然後,一旦用戶釋放他們的手指,scrollViewDidZoom
將再次被呼叫scrollView.zoomScale == scrollView.minimumZoomScale
,但scrollView.zooming == NO
。
抓住這一刻是沒有問題的,但是試圖做任何事情來搶佔反彈到最小的縮放比例動畫對我來說似乎有非常奇怪的副作用。 :(
0
我UIPinchGestureRecognizer
做到了。
-(void)viewDidLoad{
UIPinchGestureRecognizer *gestureRecognizer =
[[[UIPinchGestureRecognizer alloc] initWithTarget:self
action:@selector(pinched:)]
autorelease];
gestureRecognizer.delegate=self;
[self.scrollView addGestureRecognizer:gestureRecognizer];
//your code
}
-(void)pinched:(UIPinchGestureRecognizer*)gestureRecognizer{
if(gestureRecognizer.state==UIGestureRecognizerStateEnded){
//pinch ended
NSLog(@"scale: %f",scrollView.zoomScale);
}
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
shouldRecognizeSimultaneouslyWithGestureRecognizer:
(UIGestureRecognizer *)otherGestureRecognizer{
return YES;
}
8
使用scrollViewDidZoom:
並檢查是否scrollView.zoomBouncing == YES
,然後用zoomScale
確定視圖跳躍的方向。
- (void)scrollViewDidZoom:(UIScrollView *)scrollView {
if (scrollView.zoomBouncing) {
if (scrollView.zoomScale == scrollView.maximumZoomScale) {
NSLog(@"Bouncing back from maximum zoom");
}
else
if (scrollView.zoomScale == scrollView.minimumZoomScale) {
NSLog(@"Bouncing back from minimum zoom");
}
}
}
相關問題
- 1. 捏縮放使用uiscrollview
- 2. 檢測結束拖動/縮放MKMapView
- 3. 更改UIScrollView捏縮放速度
- 4. 測試UIImageView的捏(不捏和縮放 - 只是測試捏)
- 5. 檢測程序化UIScrollView滾動結束
- 6. NSCollectionView捏縮放
- 7. iphone捏縮放
- 8. UIImageView放大和捏在UIScrollView
- 9. 捏縮放ListView Android
- 10. 捏縮放相機
- 11. 捏與CSS3縮放
- 12. Xamarin.forms捏和縮放
- 13. 捏和縮放imageview
- 14. 捏縮放android 2.1
- 15. 捏與Hammer.js縮放
- 16. 捏縮放與GLSurfaceView
- 17. 捏縮放textview android
- 18. 捏與Osmdroid縮放
- 19. 捏縮放,TextView的
- 20. 檢測Android捏使用JavaScript進行縮放(除了Hammer.js)
- 21. AS3捏縮放和單指拖動檢測
- 22. 檢測Android捏使用JavaScript/Hammer.js縮放innerWidth
- 23. 如何檢測iPad的「中途」四指捏結束
- 24. 捏(縮放)手勢不正確縮放
- 25. 捏/縮放和滾動/縮放點kinetic.js
- 26. 當滾動結束時重置嵌套的uiscrollview縮放
- 27. 如何控制UISCrollview的捏合和縮放速度?
- 28. UIScrollview帶有多個圖像並捏合以進行縮放
- 29. 在UIScrollView中爲UIImageView添加捏/縮放效果
- 30. 縮小照片不使用捏/ UIScrollView
如果我想捕捉除了minimumZoomScale之外的zoomScale,比如`if!scrollView.zooming && scrollView.zoomScale <0.6 {做點什麼} – osrl 2014-12-24 22:59:26