我使用如下方法
我刚刚尝试了下面的代码行,动态设置UITableViewHeaderFooterView的高度大小。self.tableView.estimatedSectionHeaderHeight = 100self.tableView.sectionHeaderHeight = UITableViewAutomaticDimension
我有以下问题
在iOS9中,iOS10可以正常运行,并且可以正确显示。但是在iOS8中无法正确显示,并显示以下错误:
我的分析如下:
从错误提示中,我可以看到问题是NSLayoutConstraint:0x7f8498d7b890 _UITableViewHeaderFooterContentView:0x7f8498cb9200.height == 0
但是我从未对UITableViewHeaderFooterContentView进行任何约束
我应该如何安装iOS8?
最佳答案
您需要使用UIView systemLayoutSizeFittingSize:
-(void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];
[ViewHeader setNeedsLayout];
[ViewHeader layoutIfNeeded];
CGFloat height = [ViewHeader systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height;
CGRect headerFrame = ViewHeader.frame;
headerFrame.size.height = height;
ViewHeader.frame = headerFrame;
[tbl setTableHeaderView:ViewHeader];
}