gpt4 book ai didi

ios - TableView scrollToRow 阻塞了主 ui 线程

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

我有一个包含大约 500 个项目的 UITableView

当我调用 tableView.scrollToRow(at: indexPath, at: .bottom, animated: false) 时,主 UI 线程被阻塞了 3 秒。

有办法解决这个问题吗?还是滚动 500 个项目时出现问题?

谢谢


问题不在于 reloadData 而在于 scrollToRow

最佳答案

来自关于如何使用 TableView 进行聊天的讨论:我们可以使用一个 TableView ,它使用一个变换来翻转 Y 坐标。然后我们需要对每个单元格执行相同的操作,这样它们就不会颠倒过来。

该过程是建立一个正常的消息传递 TableView ,其中最新消息位于顶部(而不是底部)。然后将 TableView 放在某个父 View 上并反转其坐标系:

chatContainer?.transform = CGAffineTransform(scaleX: 1.0, y: -1.0)

包含消息的单元格还应该有某种 super View ,用于所有需要翻转的内容:

    override func awakeFromNib() {
super.awakeFromNib()

containerView?.transform = CGAffineTransform(scaleX: 1.0, y: -1.0)
}

所以单元格基本上翻转了两次,所以它显示正确。

您可能会找到一个示例项目 here .

关于ios - TableView scrollToRow 阻塞了主 ui 线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42410160/

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