1

我遇到了一个奇怪的问题。现在我的 TableHeaderView 大小是基于文本长度的动态。我也使用约束来安排不同的组件。这是我创建表头视图的方式...

 // dynamic tableheaderview

self.postHeaderView = [[[NSBundle mainBundle] loadNibNamed:@"EPPostHeader"
                                                     owner:self
                                                   options:nil] lastObject];

[self.postHeaderView setViewWithPost:self.post];

[self.postHeaderView setNeedsLayout];
[self.postHeaderView layoutIfNeeded];

CGFloat height = [self.postHeaderView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height;

//update the header's frame and set it again
CGRect headerFrame = self.postHeaderView.frame;
headerFrame.size.height = height;
self.postHeaderView.frame = headerFrame;
self.postHeaderView.translatesAutoresizingMaskIntoConstraints = YES;
self.tableView.tableHeaderView = self.postHeaderView;

问题是如果在 iPhone 6s 上运行,它看起来很棒。正是我想要的。但在其他 iPhone ( 6s plus, 5, 4 ) 上,结果看起来不正确。以前有人遇到过这种情况吗?如果有人知道如何处理它,那将是一个很大的帮助......

在此处输入图像描述

4

0 回答 0