在滚动视图中放置了一个表视图,现在我无法使用滑动删除

时间:2017-05-29 01:35:35

标签: ios swift uitableview

我在TableView内放置了多个ScrollView Views。这一点是这样的,当用户向右滚动时,下一个view将显示不同的table。这是有效的,但是,我现在无法删除表格中的项目,因为当我向右滑动时,它只会引导我进入下一个视图。有什么方法可以解决这个问题吗?我已经实现了func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath)功能。 谢谢!

1 个答案:

答案 0 :(得分:0)

UIScrollView有一个叫做的方法 touchesShouldCancel(in view: UIView) -> Bool

该方法取消滚动视图内容视图中的触摸事件。

由于表视图是UIView的子类,因此您可以在其中传递它。

这应该可以防止任何滚动视图触摸事件,并允许您像以前一样与表视图进行交互。

编辑: 假设您正在使用故事板,请从故事板创建一个插座到视图控制器

@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var tableView: UITableView!

然后,您可以将tableView添加到viewDidLoad

中的方法中
scrollView.touchesShouldCancel(in: tableView)

来自文档:

The default returned value is true if view is not a UIControl object; otherwise, it returns false.