处理 UITableView 单元格上的平移手势
Posted
技术标签:
【中文标题】处理 UITableView 单元格上的平移手势【英文标题】:Handle Pan Gesture on UITableView cell 【发布时间】:2017-11-21 07:20:51 【问题描述】:我将MARKRangeSlider 添加到 UITableViewCell 并按预期工作。拖动手柄时,表格视图控制器也弹出到前一个视图控制器。如何避免或阻止弹出的动作?
我通过添加委托尝试了以下代码,但未能达到结果。
- (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;
它的间歇性问题。请告诉我如何处理?
提前致谢
【问题讨论】:
【参考方案1】:我找到了解决办法,
在具有UITableView
的UITableViewController
或UIViewController
中必须禁用 interactivePopGestureRecognizer
在viewDidAppear
和相同 控制器开发人员必须在viewWillDisAppear
中启用 interactivePopGestureRecognizer
。希望对您有所帮助。
【讨论】:
以上是关于处理 UITableView 单元格上的平移手势的主要内容,如果未能解决你的问题,请参考以下文章
ios UITableview 单个单元格上的多个选择选项?
如何在选择单元格上的 UIcollectionViewCell 特定单元格中删除长手势?
处理 UICollectionView 单元格上的滑动:在 UICollectionView 或每个单元格上实现处理程序?
UITableView 单元格未显示放置在自定义单元格上的 UITableView(KPDropDown)