繁体   English   中英

带有动态单元格高度的UITableView的reloadData不必要的滚动

[英]reloadData of UITableView with Dynamic cell heights unwanted scroll

我试图解决这个问题将近两天! 而且我还没有找到任何解决方案。

我有一个使用动态代码的动态单元格高度的表格视图

tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = 300.0

对于我的tableView,我正在使用无限滚动库来加载更多具有动态高度的数据。

在某些情况下,我会用更新的数据重新加载我的表视图! 当我调用reloadData()时,tableview会向上或向下滚动。 修正估计的 Rowheight应该高至少550.0

tableView.estimatedRowHeight = 550.0

解决此问题后,调用self.tableView.finishInfiniteScroll()时,infinitscroll出现另一个问题,tableView向上滚动(跳跃)

self.tableView.beginUpdates()
self.tableView.insertRowsAtIndexPaths(indxesPath, withRowAnimation:  UITableViewRowAnimation.Fade)
self.tableView.endUpdates()
self.tableView.finishInfiniteScroll()

我正在使用AutoLayout 我正在iOS 9.1上进行测试

试试这个,不要在任何地方给桌子和单元格以高度

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
{
    return UITableViewAutomaticDimension
}

func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
{
    return 44.0
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM