我环顾四周,尝试了一些我能想到的TableView的子类,但我想我错过了一些东西。我有一个带有条目的TableView,我可以左右滑动,一切正常。但是,如果:
1)我开始(垂直)滚动一点,然后滑动,TableView
的超类ScrollView
似乎阻止了我TableViewCell
的滑动
2)我停止滚动,但动画没有完全停止,滑动仍阻止TableViewCell
。
无论纵向滚动如何,如何让我的滑动传递到TableViewCell
?
答案 0 :(得分:0)
Swift 2.2,Xcode 7.3
我基本上通过执行此线程中建议的内容来修复此问题:Tell ScrollView to Scroll after other pan gesture
下面的代码应该允许遇到此线程的其他人在表格视图中滚动,并且能够滑动,而无需处理表格视图的平移手势识别器,因为仅仅因为光线而阻止滑动垂直运动的暗示。
希望它有所帮助。
所以(在UITableViewController
内部 - 发出非必要代码):
var lsgr : UISwipeGestureRecognizer!
override func viewDidLoad(){
super.viewDidLoad()
self.lsgr = UISwipeGestureRecognizer(target: self, action: "didSwipeLeft:")
self.lsgr.direction = .Left
self.lsgr.cancelsTouchesInView = false
self.lsgr.delegate = self
}
func didSwipeLeft(leftSwipe: UISwipeGestureRecognizer){
var ip = self.tableView.indexPathForRowAtPoint(leftSwipe.locationOfTouch(0,inView: self.tableView))
print("swipe left - "+String(ip!.row))
}