Как получить заголовок раздела tableView

Это может звучать как странный вопрос, так как, очевидно, всегда есть viewForHeaderInSection метод доступен при работе с таблицами в iOS.

Однако для работы с этой функцией необходимо перезагрузить данные этой таблицы, чего я, в данном случае, хочу избежать.

У меня есть кнопка в моем UITableViewSectionHeaderи я хочу отключить его в определенной точке моего приложения - снова - без перезагрузки данных таблицы. Я попытался сделать это с помощью этого кода:

let currentTable = self.playerTables![i] as! UITableView
let header = currentTable.headerViewForSection(0)! as UITableViewHeaderFooterView!
let view = header.contentView as UIView
view.userInteractionEnabled = false

мое приложение вылетает при запуске этого кода, так как header ноль при загрузке contentView. Инициализируется, когда я вызываю currentTable.headerViewForSection(0)! код, но снова ноль на следующей строке.

Я проверил, является ли раздел, на который я ссылаюсь, правильным или нет, проверил Apple Docs и Google/ так и не смог найти какую-либо ссылку на доступ к заголовку раздела так, как я хочу. Есть ли способ?

1 ответ

Решение

Если headerview не отображается на экране (не отображается), вы не можете добраться до него.

Может быть, раскадровка поможет вам. Перетащите UIView в tableview, Это будет ваш headerview и вы можете подключить элементы управления непосредственно к UIViewController и получить к ним доступ.

Также вам не нужно использовать viewForHeaderInSection для этого примера.

заголовок в раскадровке

Другие вопросы по тегам