- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
几个小时以来,我一直在努力解决这个问题,但每次我尝试这样的事情时:
self.dataArray.append(newCellObj)
然后我这样做:
self.tableView.beginUpdates()
self.tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Top)
self.tableView.endUpdates()
UITableView 会自动滚动到页面顶部。
即使我尝试:
self.tableView.scrollEnabled = false
self.tableView.beginUpdates()
self.tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Top)
self.tableView.endUpdates()
即使完全禁用滚动,UITableView 仍然会滚动到顶部。调用 insertRowsAtIndexPaths
后,究竟是什么导致 ScrollView 滚动到顶部?
我对这个问题唯一的解决办法是使用这个:
self.tableView.reloadData()
相反。如果我改用 reloadData 就好了,但我会失去我真正想保留的漂亮动画。
我也有 self.tableView.scrollsToTop = false
并且我已经尝试过许多其他类似的配置,这些配置可能会以某种方式禁用滚动,但是,在 insertRowsAtIndexPaths
最佳答案
我遇到了与 OP 相同的问题。此外,有时我的一些表格 View 单元格会变成“空白”并完全消失,这导致我找到 this related question。 .
对我来说,解决方案是执行以下操作之一:
- 实现
func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
- 禁用自动布局
- 在我的
UITableView
上设置更准确的 estimatedRowHeight
关于ios - 为什么 insertRowsAtIndexPaths 总是导致 TableView 滚动到顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35543177/
我使用以下方法在表中添加新行: [tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:newIndexPath] withRowAnim
我面临这个错误: Assertion failure in -[UITableView _endCellAnimationsWithContext:] 当我尝试使用 insertRowsAtIndex
我有一个包含 uitableview 的导航 Controller ,当我按下一行时,它会在堆栈上弹出一个新的 View Controller ,该 Controller 用于在详细 View 中显示
我正在尝试在用户滚动时将行动态添加到 TableView 的底部。这个想法是用户不会注意到这一点,并且可以“无限”地滚动。 当用户到达表格底部的 40 个单元格时,我想在底部绘制 100 个新单元格。
我浏览了所有在线示例,但无法弄清楚如何正确地将单元格添加到带有动画的 TableView 中。假设我有一个包含一个单元格的部分,我想在用户点击第一个单元格的附件后添加另一个单元格。 我的“添加”方法是
我的应用程序运行良好,我没有将其修改为具有专用的数据 Controller 类,而不是像在初始测试期间那样在主 UI 类中处理数据。然而,自从更改以来,当向 TableView 添加新项目时,它不断崩
* 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“尝试将第 0 行插入第 0 部分,但更新后第 0 部分中只有 0 行” 我意识到这里的问
搜索了又搜索..找不到答案:| 我很确定我正确使用了 insertRowsAtIndexPaths...这是我的代码,以及我收到的错误... 首先,我收到服务器返回的响应,其中包含我想要动态插入到静态
我正在尝试为我的表格 View 实现 insertRowsAtIndexPaths。 在此实现之前,我曾经在用户点击表末尾后调用[self.tableView reloadData]。这种方法有点影响
我在使用 Core Data 时遇到了问题。应用程序崩溃,因为当我插入一个新元素时,我尝试访问一个不存在但它应该存在的单元格。 重要的代码: func controllerWillChangeCont
我有一个 uitableview,我尝试通过 insertRowsAtIndexPaths 函数附加它。如果我只是将数据添加到数据源数组,uitableview 会很好地追加,但让我很难通过上述函数插
我需要在所选行下添加一个新行。我在 didSelectRowAtIndexPath 中使用此代码: [_dataSource insertObject:newDataObject atIndex:in
我正在尝试使用 insertRowsAtIndexPaths 一步将一堆行插入到一个空的 UITableView 中。 (我知道这听起来没什么用,但它是我真正需要做的事情的简化版本。) 我看到的问题是
我有一个UITableView,用户可以在其中插入新行。发生这种情况时,我想重新加载表中的所有旧行。一种解决方案是在插入发生后立即调用 reloadData,这完全有效,但这意味着我看不到插入动画。
我有一个从获取的结果 Controller 填充的表格 View 。我还使用 NSTimer 每分钟进行一次 API 调用,从而引入要显示的任何新数据。这使用带有新托管对象上下文的 GCD 异步发生,
它不会每次都发生,但会随机 insertRowsAtIndexPaths: 使我的应用程序在 tableviews endUpdates 上崩溃。这是代码。 NSURLRequest *request
我正在使用 insertRowsAtIndexPaths 方法向 UITableView 添加行。我将此代码放在 [myTable beginUpdates]; 和 [myTable endUpdat
在表更新之前,我的表数据源只有一个部分,一行: 第 0 节 第 [0,0] 行 更新后数据源返回另外两个部分,每个部分只有一行: 第 0 节 第 [0,0] 行 第 1 节 第 [1,0] 行 第 2
我目前正在使用以下代码在我的 UITableView 中插入单元格: [rottenTableView insertRowsAtIndexPaths:indexPathsToInsert withRo
我正在使用 insertRowsAtIndexPaths 方法将新行添加到我的 UITableView。存在添加重复行的问题。 例如,如果我键入 "HI",然后触摸回车,则会向表格中添加包含文本 "H
我是一名优秀的程序员,十分优秀!