2015-01-09 4 views
4

Я имею общий колонтитул для всех ячеек и я устанавливаю егоСделать UITableViewHeaderFooterView не липкий

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section

Я знаю, что по умолчанию колонтитулы липкие к нижней части UITableView, я не хочу колонтитулы придерживаться в нижней части таблицы, что лучший способ достичь этого?

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

Может ли кто-нибудь помочь мне с этим?

ответ

3

Вы можете установить UITableViewStyle как .

Используйте этот инициализатор.

- (instancetype)initWithFrame:(CGRect)frame style:(UITableViewStyle)style; 

Вы можете установить это на раскадровку.

enter image description here

+0

Я использую раскадровку, так что я думаю, что мне нужно изменить стиль от раскадровки – Abhishek

2

Вы можете создать дополнительный uitableviewcell и добавить в последний Tableview. В методе numberOfRowsInSection: вы можете добавить один 1 как

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { 
     return [objectArray count]+1 ; 
} 

в tableView:cellForRowAtIndexPath: метод

+2

то, что я уже знаю, но он с ounds как взломать мне – Abhishek

+0

Ответ suhit правильный. Нижний колонтитул стола предназначен для того, чтобы придерживаться, и пытаться предотвратить это было бы взломано. Лучший способ получить дополнительный контент под ячейкой без приклеивания - это еще одна ячейка. –

0

Если вам посчастливилось иметь статическую высоту нижнего колонтитула и не изменяя contentInsets, вы можете попробовать это (предполагая, что высота нижнего колонтитула в 44):

self.tableView.contentInset = UIEdgeInsetsMake(0, 0, -44, 0) 
Смежные вопросы