【发布时间】:2025-12-24 07:45:06
【问题描述】:
我有一个聊天应用程序,当我按下发送按钮时,表格会重新加载新行,我正在调用滚动到底部功能以滚动到新添加的单元格。问题是我的 textview 文本直到 tableview 滚动到底部才被清空。有没有其他方法可以执行这些操作以减少时间延迟?
滚动到底部代码:
self.tableView.reloadData()
let section: Int = numberOfSections(in: self.tableView) - 1
let item: Int = tableView(self.tableView, numberOfRowsInSection:section) - 1
let lastIndexPath = IndexPath(item: item, section: section)
self.tableView.scrollToRow(at: lastIndexPath, at: .bottom, animated: false)
当我删除上面的代码时,文本视图立即被清空
问题:
【问题讨论】:
-
您应该异步重新加载表。我认为这将防止其他问题。使用这个:
DispatchQueue.main.async { self.tableView.reloadData() } -
您可以先隐藏文本视图,然后重新加载并滚动到底部,然后清空文本视图并取消隐藏。
-
我在执行 scrolltobottom 之前清空 textview
标签: ios swift uitableview