SB-Xib-TableView-HeaderView-FooterView
在Storyboard
、Xib
优雅的给 UITableView
设置tableHeaderView
、tableFooterView
本项目主要是介绍在
SB
/Xib
中给UITableView
设置tableHeaderView
,tableFooterView
的方法。默认认为已经基本熟悉SB
/Xib
的使用哈。
在平时的项目开发中,可能使用sb或者xib会特别快,当然喜欢代码的就可以忽略了哈。我们在用UITableView可能会使用到
tableHeaderView
,tableFooterView
这2个属性,在有一些需求来说是得心应手。之前都是使用代码添加UITableView的tableHeaderView
,tableFooterView
,虽然也挺方便,那么是否可以使用xib直接添加呢?在网上搜了下,答案是可以的哈,下面的简单介绍下添加的方式。
Storyboard 中给UITableView
设置tableHeaderView
,tableFooterView
Xib 中给UITableView
设置tableHeaderView
,tableFooterView
运行结果
怎么样自适应高度
可以添加如下代码完成自适应,参考于这里
- (void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
{
CGFloat height = [self.tableView.tableFooterView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height;
CGRect footerFrame = self.tableView.tableFooterView.frame;
footerFrame.size.height = height;
self.tableView.tableFooterView.frame = footerFrame;
self.tableView.tableFooterView = self.tableView.tableFooterView;
}
{
CGFloat height = [self.tableView.tableHeaderView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height;
CGRect headerFrame = self.tableView.tableHeaderView.frame;
headerFrame.size.height = height;
self.tableView.tableHeaderView.frame = headerFrame;
self.tableView.tableHeaderView = self.tableView.tableHeaderView;
}
}