Mat*_*266 5 uitableview ios swift
几个小时以来我一直在讨论这个问题,但每次我尝试这样的事情:
self.dataArray.append(newCellObj)
Run Code Online (Sandbox Code Playgroud)
然后我这样做:
self.tableView.beginUpdates()
self.tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Top)
self.tableView.endUpdates()
Run Code Online (Sandbox Code Playgroud)
UITableView将自动滚动到页面顶部.
即使我尝试:
self.tableView.scrollEnabled = false
self.tableView.beginUpdates()
self.tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Top)
self.tableView.endUpdates()
Run Code Online (Sandbox Code Playgroud)
即使滚动完全禁用,UITableView仍将滚动到顶部.是什么原因导致ScrollView在insertRowsAtIndexPaths调用之后滚动到顶部?
我对此问题的唯一解决方案是使用此方法:
self.tableView.reloadData()
Run Code Online (Sandbox Code Playgroud)
代替.如果我使用reloadData而不是它很好,但是我失去了我真正想保留的漂亮动画.
我也有,self.tableView.scrollsToTop = false并且我已经尝试了许多其他配置,可能会以某种方式禁用滚动,但是,有一些事情在这之后覆盖了insertRowsAtIndexPaths
Ili*_*rim 14
我遇到了与OP相同的问题.另外,有时候我的一些桌面视图单元格会"空白"并完全消失,这引出了我这个相关的问题.
对我来说,解决方案是执行以下操作之一:
func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat estimatedRowHeight的我UITableView| 归档时间: |
|
| 查看次数: |
2992 次 |
| 最近记录: |