2017-11-21 21 views
0

UITableViewCell에 MARKRangeSlider을 추가하고 예상대로 작동했습니다. 핸들을 드래그하는 동안 테이블 뷰 컨트롤러도 이전 뷰 컨트롤러로 팝업됩니다. 나는 어떻게 피할 수 있을까?UITableView 셀의 팬 제스처 처리

대리인을 추가하여 다음 코드를 시도했지만 결과를 얻지 못했습니다.

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer { 
     // CGPoint velocity = [panGestureRecognizer velocityInView:panGestureRecognizer.view]; 
     // return fabs(velocity.y) > fabs(velocity.x); 
     CGPoint translation = [(UIPanGestureRecognizer *)gestureRecognizer translationInView:gestureRecognizer.view.superview]; 
     // if you want an NSString 
     NSLog(@"gestureRecognizer-superview %@", NSStringFromClass([gestureRecognizer.view.superview class])); 
     return fabs(translation.x) > fabs(translation.y); 
    } 


- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldBeRequiredToFailByGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{ 
    if (otherGestureRecognizer == leftPanRecognizer) { 
     return YES; 
    } 
    if (otherGestureRecognizer == rightPanRecognizer) { 
     return YES; 
    } 
    return NO; 
} 

간헐적 인 문제입니다. 어떻게 처리하는지 알려주세요. UITableView에가 비활성화interactivePopGestureRecognizerviewDidAppear같은 컨트롤러 개발자의 viewWillDisAppearinteractivePopGestureRecognizer을 가능하게했다 미리

답변

0

나는 해결책을 발견에

감사합니다,

UITableViewController에서

또는이 UIViewController . 희망이 도움이됩니다.