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