UITableviewHeader隐藏了顶级单元格

时间:2016-08-03 12:03:42

标签: ios objective-c uitableview uiview nstableviewheader

我设置tableHeaderView的{​​{1}},但它隐藏了表格的顶部单元格。在我的情况下,我想显示tableview标题我已经使用了所有可能的解决方案但不起作用。请帮忙。

UITableView

View debugger screenshot

3 个答案:

答案 0 :(得分:1)

尝试在最后写下面的行  [self.tableView setNeedsUpdateConstraints]; [self.tableView updateConstraintsIfNeeded];

如果您使用故事板设置标题视图,那么它将变得简单

答案 1 :(得分:1)

我正在解决此问题,就我而言,真正的问题是情节提要中的约束。

  

您必须从情节提要中重置约束。

或者,如果您以编程方式进行设置,则需要在对窗口小部件设置约束之后调用updateConstraintsIfNeeded方法。

答案 2 :(得分:0)

不要在viewDidLoad中执行此操作。而是在viewWillLayoutSubviews中执行此操作。这对我有用。

- (void)viewWillLayoutSubviews {
    [super viewWillLayoutSubviews];
    [_headerWrapper setNeedsLayout];
    [_headerWrapper layoutIfNeeded];
    CGFloat height = [_headerWrapper systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height;
    CGRect headerFrame = _headerWrapper.frame;
    headerFrame.size.height = height;
    _headerWrapper.frame = headerFrame;
    _tableView.tableHeaderView = _headerWrapper;
}