完成滚动后的Center Cell UITableView

时间:2014-11-21 14:25:16

标签: ios uitableview swift nsindexpath

我有一个UITableView,并且我不希望它在滚动后停止时在两个单元格之间停止。因此,当UITableView的速度小于给定值时,我需要移动距离屏幕Y中心最近的单元格。

我确定我不是第一个想要这种效果的人,但我在研究中找不到任何东西。我必须知道这一点,我不知道。有人有链接或什么?

我试图独自完成这项工作,但我不知道如何获得这个细胞。我使用tableView.indexPathsForVisibleRows(),所以我有一个indexPaths数组,但现在我不知道如何调用相应的单元格。有cellForRowAtIndexPath,但是此方法会创建一个新单元格,不是吗?

2 个答案:

答案 0 :(得分:2)

您需要在表格视图委托中实施-scrollViewWillEndDragging:withVelocity:targetContentOffset:,就像在this other question here中一样。

基本上,此方法允许您调整速度滚动停止的位置。

在不知道表格视图的结构(可变高度的单元格?)的情况下,我无法帮助您更多地使用代码。

答案 1 :(得分:0)

尝试将此添加到ViewDidLoad:

self.tableView.bounces = false