在iOS 6中,我有一个UITableView,启用了pull to refresh。在顶部单元格中,我有几个海关控件,用户可以通过拖动圆形滑块进行交互(请参阅此example)。见截图...
控件需要一个标签并且需要拖动滑块指示器的拖动但是它们可能很难抓取,因为击中似乎经常在单元格背景上,导致表格拖动开始。
如果点击事件发生在那些控件上的任何地方,我想禁用表的默认滚动。我能想到的两个选择:
有关如何实现其中任何一项的任何建议?
谢谢!
我曾经使用UIControl
的子类并覆盖这些函数:
override func continueTracking(_ touch: UITouch, with event: UIEvent?) -> Bool { }
override func endTracking(_ touch: UITouch?, with event: UIEvent?) {}
override func beginTracking(_ touch: UITouch, with event: UIEvent?) -> Bool {}
这个圆形滑块样式对我来说很好用。
如果仍然无效,您可以尝试在上述方法中打开/关闭tableView可滚动。
tableView.isScrollEnabled = false / ture