UITableView scrollToRowAtIndexPath第一个单元格上的奇怪行为

时间:2015-01-30 21:38:00

标签: uitableview swift ios8

我有一个奇怪的问题。在我的应用程序中,我有一个启用分页的表视图和具有全屏高度的单元格,只有一个单元格可见。每个单元格都有一个按钮,当用户点击它时,scrollToRowAtIndexPath会启动,表格视图会滚动到下一个单元格。 不幸的是,当从第一个单元格滚动到第二个单元格时,第一个单元格表现奇怪 - 它首先消失(内容视图丢弃所有子视图),然后它从屏幕底部出现,一直向上流动,然后出现第二个单元格。此问题不会在其他单元格上重现 - 仅在从第一个单元格过渡到第二个单元格时。我正在使用的代码如下,任何帮助将不胜感激。

            let cells = tableView.indexPathsForVisibleRows()?.sorted{ first, second in ((first as NSIndexPath).row) < ((second as NSIndexPath).row) }
    if let cells = cells {
        if cells.count > 0 {
            if let currentIndexPath = cells[0] as? NSIndexPath {
                let nextIndexPath = NSIndexPath(forRow: currentIndexPath.row + 1, inSection: currentIndexPath.section)

               // UIView.animateWithDuration(0.2, animations: { () -> Void in
                println("table view scrolls")

                if ( currentIndexPath.row + 1 >= self.tableView(self.tableView, numberOfRowsInSection: 0 ) )
                {
                    return ;
                }

                   self.tableView.scrollToRowAtIndexPath(nextIndexPath, atScrollPosition: UITableViewScrollPosition.Top , animated: true )


            }
        }
    }
}

0 个答案:

没有答案