Programmatically remove the header of UITableView and automatically resizes the content to fill in the removed area
Solution 1
If you want to remove the table's header view, just set the myTable.tableHeaderView property to nil. If what you have is actually a section header, then you need to return nil from the viewForHeaderInSection method and call [myTableView reloadData]
Solution 2
You could also do:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
return 0.0;
}
This seems to work for my (single) section header and avoids the need for reloadData
.
Note that:
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
is still called, but its return value seems to be ignored.
code007
Updated on July 09, 2022Comments
-
code007 almost 2 years
I have added a
UIButton
in the header section of theUITableView
via the interface builder and would like to remove the access to the button in certain cases. I have tried to use the.hidden = TRUE
property but it just hides the button from the view, leaving a white space behind. How do I programmatically remove the header ofUITableView
and have the table's content automatically resizes to fill in the removed header area?