Первая ячейка TableView скрыта под панелью поиска при возврате к просмотру - PullRequest
0 голосов
/ 07 апреля 2019

У меня странное поведение в TableView, и я надеюсь, что кто-нибудь мне поможет.

У меня есть TableView с панелью поиска в навигации.Ячейки ведут к подробному виду.Всякий раз, когда я выполняю поиск в TableView, а затем нажимаю на ячейку результатов, чтобы перейти к подробному представлению, при возврате из подробного представления в TableView первая ячейка исчезает под открытой поисковой панелью.

Поиск:

Searching

При выборе элемента (подробный вид) и возврате (с помощью навигационной панели) первой ячейкискрытые под строкой поиска:

Returning

Некоторые вещи, на которые следует обратить внимание:

  • Если я распечатываю contentInset при возврате, это дает-44 (1 ячейка скрыта, как на картинке).Я не могу установить для contentInset значение 0.0 (или что-то еще), поскольку, похоже, оно ничего не меняет.
tableView.setContentOffset(CGPoint(x: 0, y: 0), animated: true)
print(tableView.contentOffset.y)

// -44.0

Если первая ячейка скрыта, а я скрываюВ строке поиска, нажав на таблицу вниз, а затем снова вверх, проблема автоматически исчезает, и ContentInset восстанавливает значение 0.0.

UPDATE : я обнаружил, что представление восстанавливается и после возвратаприложение из фона:

enter image description here

Однако я не могу воспроизвести это в коде.Я пробовал:

view.setNeedsLayout()
view.layoutIfNeeded()
tableView.reloadData()

1 Ответ

0 голосов
/ 12 апреля 2019

Решено, я установил searchController.hidesNavigationBarDuringPresentation = false, что вызвало ошибку.См. Ответ на этот пост: Панель поиска в элементе навигации сворачивается и застревает под строкой состояния при всплывающем окне навигации в iOS 11 .

Спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...