Как загрузить tableView снизу - PullRequest
0 голосов
/ 20 марта 2019

Я получаю данные с сервера, и когда они приходят ко мне, таблица обновляется, как сделать так, чтобы при получении данных таблица сползла вниз?

tableView.scrollToBottom(animated: true)

нерабочая

Ответы [ 3 ]

0 голосов
/ 20 марта 2019

Вы можете использовать tableView.scrollToRow(at:at:animated:). Например, предположим, у вас есть массив строк, которые отображаются в табличном представлении:

var items = ["1", "2", "3"]

func scrollToBottom() {
    let indexPathToReach = IndexPath(row: items.count - 1, section: 0)
    tableView.scrollToRow(at: indexPathToReach, at: .bottom, animated: true)
}
0 голосов
/ 20 марта 2019
  1. Обновление источника данных табличного представления после получения данных.
  2. Перезагрузить представление таблицы (вызов метода reloadData()) или вставить ячейки (вызов метода insertRows(at:with:)) в основной поток.
  3. Прокрутка вниз (вызов метода scrollToRow(at:at:animated:)) в главном потоке.
0 голосов
/ 20 марта 2019

tableView не имеет метода scrollToBottom, я думаю, вы должны добавить этот метод в расширение UITableView

Пример :

import UIKit

extension UITableView {
    func scrollToBottom(animated: Bool) {
        let y = contentSize.height - frame.size.height
        setContentOffset(CGPoint(x: 0, y: (y<0) ? 0 : y), animated: animated)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...