[英]swipe and pan gesture overlap
是否可以讓特定手勢失敗,以便識別下一個可能的手勢?
更具體一點,請查看示例代碼段:
UISwipeGestureRecognizer *swipeLeft = [initialize UISwipeGestureRecognizer... @selector(handleSwipe:)]
swipeLeft = UISwipeGestureRecognizerDirectionLeft;
swipeLeft.delegate = self;
UIPanGestureRecognizer *pan = [initialize UIPanGestureRecognizer... @selector(handlePan:)]
pan.delegate = self;
[pan requireGestureRecognizerToFail:swipeLeft];
上面的代碼指出,如果設備無法識別向左滑動,則將使用平移手勢處理程序。
所以我的問題:是否有可能讓swipeLeft故意失敗(在被設備識別為滑動左觸摸之后)基於在handleSwipe上檢查的一些標准,並讓平移手勢處理觸摸輸入?
謝謝。
在這里查看UIGestureRecognizerDelegate
協議:
具體來說,
gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
方法可能有用。 如果您只是從此方法返回YES
,則可以同時識別這兩個手勢,因此您可以對兩者進行適當的響應。
假設您為平移手勢實現了一些其他處理程序,那么您不能這樣做:
-(void)handleSwipe:(id)sender {
if //criteria is met to ignore left swipe
{
[self handlePan:self];
}
}
-(void)handlePan:(id)sender {
// handle pan gesture here
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.