gpt4 book ai didi

iOS:reloadData 时将 UITableView 保持在同一位置

转载 作者:搜寻专家 更新时间:2023-11-01 06:29:15 28 4
gpt4 key购买 nike

我遇到了一个烦人的问题。我正在做一个消息传递应用程序。在消息页面中,当用户滚动到顶部时,一旦最上面的单元格可见,它将加载更多消息以显示。因为在加载更多消息时, TableView 的位置在顶部(内容偏移量为 0),完成加载消息后,我调用 reloadData 并且 iOS 尝试维护相应的偏移量再次滚动到 TableView 的顶部并触发另一个加载。这就像一个无限循环,直到没有更多的消息要加载。我试图在 reloadData 之后调用 scrollToRow 但没有成功。

所以任何可以在调用 之后保持表格 View 在相同位置的东西(即如果在加载之前,消息“a”在顶部,在加载之后,消息“a”仍然在屏幕顶部) reloadData 对我有用。

为此花了几个小时,所以我非常感谢任何帮助。谢谢

最佳答案

我不知道这是否对你有帮助,但你可以在重新加载时尝试这个-

if let indexPaths = tableView.indexPathsForVisibleRows {
tableView.reloadRows(at: indexPaths, with: .none)
} else {
tableView.reloadData()
}

关于iOS:reloadData 时将 UITableView 保持在同一位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49596163/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com