0

我的項目中有20多個viewcontrollers,並在全局viewcontroller類中添加了滑動手勢。UIView滑動手勢與目標c中的tableview衝突

UISwipeGestureRecognizer *rightSwipeGesture = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(navigateToPreviousScreen:)]; 
rightSwipeGesture.cancelsTouchesInView = YES; 
rightSwipeGesture.direction = UISwipeGestureRecognizerDirectionRight; 
[self.view addGestureRecognizer:rightSwipeGesture]; 

,並覆蓋所有子類

- (void)navigateToPreviousScreen:(UISwipeGestureRecognizer *)sender { 

[self.navigationController popViewControllerAnimated:YES];} 

現在我有一個問題(不完全是一個問題),在一些viewcontrollers有tableviews和刷卡有時不能正常工作(也有一些觸摸敏感問題)。有沒有辦法解決它。我設置cancelsTouchesInView =不,但似乎問題發生。

在此先感謝。

回答

0

您應該可以通過在父類中的以下UIGestureRecognizerDelegate方法中返回YES來實現&來解決此問題。

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { 
     return YES; 
} 
+0

好的,謝謝。我在父類中添加了方法,似乎解決了這些問題。 – Gopi

+0

好的。如果解決這個問題,你應該把這個答案標記爲正確的。 – Xcoder

+0

對不起。現在我做到了。 – Gopi