@Rocknglory

Как сделать переход UITableView Header в элемент управления?

Добрый день, мучаюсь со следующей проблемой - существует таблица с двумя секциями, при скролле до второй секции необходимо фиксировать ее заголовок наверху, но при этом не дать контенту уехать наверх.
  • Вопрос задан
  • 2450 просмотров
Решения вопроса 1
Flanker_4
@Flanker_4
Самым простым и быстрым решением будет
self.tableView.contentInset = UIEdgeInsetsMake(0, 0, <table height>-<row height>*<row count>, 0);

Т.е. мы ограничиваем скрол у таблицы на высоту секции (rowHeigh*rowCount) но с возможностью проскролить вверх на весь экран (table height)
Обратите внимание, что в "формуле" не учтены футер и хидер таблицы, да и вообще оно будет криво работать с таблицами где ячейки разноразмерные, где таблица не plain, а group. Да да, а еще если это UITableViewController и в нем включен UINavigationBar, то вам размер tableview вернет все 568 пикселей для 4" экрана, вместе с navigation bar'om, и нужно будет это предусмотреть. Короче куча исключений...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
smanioso
@smanioso
Отмечайте ответы на свои вопросы!
Если стандартное поведение заголовков таблицы не подходит, то лучше реализовать кастомные элементы управления.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы