У меня есть таблица, в которой больше нагрузки.Я хотел бы добавить функцию прокрутки в верхнюю часть страницы, когда пользователь дважды нажимает на панель вкладок, как в Twitter, Instagram.
Это мой код, когда пользователь дважды нажимает на элемент панели вкладок.
func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) {
if previousController == viewController {
if let navVC = viewController as? UINavigationController, let vc = navVC.viewControllers.first as? AssistantMainViewController {
if vc.isViewLoaded && (vc.view.window != nil) {
// viewController is visible
vc.tableView.setContentOffset(CGPoint(x: 0, y: -173), animated: true)
}
}
}
previousController = viewController
}
Отлично работает при первой загрузке таблицы.Проблема в том, что когда я загружаю больше ячеек в свое табличное представление и прокручиваю их вверх, табличное представление не прокручивается, чтобы сверху оно застряло где-то посередине.Другая странная вещь, если я прокручиваю вручную вверх, после загрузки больше, элемент панели вкладок прокручивает таблицу правильно, пока не загрузит больше ячеек.
При загрузке больше действий, в основном приложение получает больше контента с сервера и добавляет их в массив и вызывает tableview.reloadData ()
adviceDataSource.loadMoreContent(beforeDay: beforeDate, success: {feedCount in
if feedCount == 0 {
self.didGetLastPage = true
}
self.tableView.reloadData()
self.tableView.layoutSubviews()
self.isRunningRequest = false
}, error: { (errorString, statusCode) in
self.isRunningRequest = false
}) { (MoyaError) in
self.isRunningRequest = false
}
Вероятно, проблема заключается в том, что при загрузке большего количества ячеек tableview не 'Не знаю его новый размер контента. Кстати, когда коснитесь строки состояния таблицы, прокрутите вверх до совершенства.Если вам известна функция, которая вызывается, когда пользователь нажимает на строку состояния, она была бы для меня идеальной.
Я работал и искал ее 2 дня, любая помощь?
Спасибо!