【问题标题】:UITableView stops scrolling when adding new rowsUITableView 在添加新行时停止滚动
【发布时间】:2015-10-19 06:12:37
【问题描述】:

我有一个 UITableView,其中包含以 UIImages 作为主要内容的单元格。表格视图是分页的,所以当我接近 UITableView 的末尾时,我向 API 发出新请求并插入新单元格(无限滚动)。

问题是当来自 API 的数据到达时,我将它们添加到表格视图中,滚动完全停止。

我试过了

[tableview reloadData]

[tableview beginUpdates]
[tableview insertRows...]
[tableview endUpdates]

但滚动动画在这两种情况下都会完全停止。

【问题讨论】:

  • 你能多贴一点代码吗?
  • 您在发出新请求后检查了 cellforrowatindexpath 吗?
  • @Codecracker 感谢您的评论,我重新检查了我的代码并发现了问题!我的愚蠢错误,我会发布答案。

标签: ios objective-c uitableview scroll uiscrollview


【解决方案1】:

我刚刚发现了问题:新数据到达后,我有一个 UIRefreshControl 调用[self.refreshControl endRefreshing]。由于某种原因,该方法停止了表格视图中的所有滚动动画。

通过添加

if ([self.refreshControl isRefreshing]) {
    [self.refreshControl endRefreshing];
}

问题解决了。

【讨论】:

  • 哇,为我节省了很多时间。很高兴您发现了这一点,并感谢您记得在此处更新您的答案。
  • 你为我节省了大量的时间和挫折感
【解决方案2】:

斯威夫特 5:

if self.refreshControl.isRefreshing {
    self.refreshControl.endRefreshing()
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-03
    • 2020-11-16
    • 2011-01-13
    • 2017-11-11
    相关资源
    最近更新 更多