2016-10-06 12 views
0

Есть ли простой способ определить, достаточно ли вам TableViewCells для покрытия всего экрана? Как и весь экран, зарезервированный для TableView, представлен в cells.Swift определить, достаточно ли у вас клеток для покрытия всего экрана

Я знаю, что вы можете сложить высоту каждого cell и высоту группы headers и StatusBar и любые другие элементы на экране и посмотреть, если сумма, если меньше, чем высота экрана используемого устройства. Но есть ли более элегантный и более простой способ узнать?

+0

лучший способ справиться с этим процент экрана, используя и распространять с помощью строки состояния, заголовок, колонтитул и ячейку, а затем автоматически она полностью покрывает экран в любое устройство –

+0

Поскольку 'UITableView' происходит от' UIScrollView', вы всегда можете получить свой '.contentSize' после вызова' layoutIfNeed'. Затем сравните его с размером экрана. –

ответ

0

Вы можете считать это чем-то вроде,

let tableViewLastPoint = self.yourTableView.tableFooterView!.frame.origin.y + self.yourTableView.tableFooterView!.frame.size.height 

затем сравните, что если tableViewLastPoint больше высоты вашего экрана, то вы имеете ячейку, которая требует больше высоты, то экран, иначе клетки не требуется весь экран!

В этом случае вы должны инициализировать ваш tableview's footerview with zero frame как,

self.yourTableView.tableFooterView = UIView.init(frame: CGRectZero)