使用xib创建tableview的tableHeaderView

2020-11-13  本文已影响0人  BlueBar

在使用xib创建tableview的tableHeaderView的时候,由于各手机屏幕不一致,所以各个控件的高度是不一样,在高度自适应中,在xib的最后一个控件不要与view设置约束,使view的高度能够延伸,然后在.m文件layoutSubviews中根据view的最后一个控件的位置重新设定view.frame.size.height即可.

- (void)layoutSubviews{
    [super layoutSubviews];
    CGRect frame = self.frame;
    frame.size.height = CGRectGetMaxY(self.lastView.frame)+20;
    self.frame = frame;
}

要是根据网络数据填充适配高度的话,只要在填充完数据的是后再设置
self.tableView.tableHeaderView =self.headerView;
然后tableview reload的时间延迟一小会即可.

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
                [self.tableview reloadData];
            });
上一篇 下一篇

猜你喜欢

热点阅读