У меня есть приложение чата, в котором я показываю сообщения в виде таблицы.Когда я нажимаю, чтобы обновить и показывать больше сообщений вверху, я хочу остаться на том же экране, где запускается тяга, чтобы обновить, т.е. не прыгать.Следующий код не работает, и он прокручивается вниз.
func refresh() {
currentPage = currentPage + 1
if currentPage <= totalPages {
fetchMessaes(page: self.currentPage, completed: {
self.messageArray.append(contentsOf: self.fetchedMessages!.messages!)
// Sort message by ID so that latest message appear at the bottom.
let sortedArray = self.messageArray.sorted(by: {$0.id! < $1.id!})
self.fetchedMessages = sortedArray
self.messagesTable.reloadData()
// Scroll to the last row of recently loaded messages
DispatchQueue.main.async {
let index = IndexPath(row: 0, section: 0)
self.messagesTable.scrollToRow(at: index, at: .top, animated: false)
}
})
}
refreshControl.endRefreshing()
}