首页 > 其他 > 详细

UITableView tableHeaderView autolayout自动计算高度

时间:2015-11-27 00:46:22      阅读:769      评论:0      收藏:0      [点我收藏+]

1.代码方式

//测试代码
@interface ViewController ()<UITableViewDataSource> 

@property (weak, nonatomic) IBOutlet UITableView *tableView;

@property (strong, nonatomic)  UILabel *headerLable;

@property (strong, nonatomic)  UIView *headerView;

@end

 

 

    //Auto Layout能够计算出正确的界面的必要条件是约束充分
self.headerLable = [UILabel new]; self.headerLable.numberOfLines = 0; self.headerView = [UIView new]; [self.headerView addSubview:self.headerLable]; [self.headerLable mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.mas_equalTo(self.headerView).valueOffset([NSValue valueWithUIEdgeInsets:UIEdgeInsetsMake(10, 10, 10, 10)]); }]; self.tableView.tableHeaderView = self.headerView; [self.headerView mas_makeConstraints:^(MASConstraintMaker *make) { make.width.mas_equalTo(self.view.mas_width); }]; self.headerLable.text = @"测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本测试文本";
[self.tableView.tableHeaderView layoutIfNeeded]; self.tableView.tableHeaderView
= self.headerView;

? 1.修改tableView的tableHeaderView界面时,界面并不能及时刷新,可手动调用layoutIfNeeded 此时view高度为理想高度

    2.tableViewHeader高度变化时,界面也不能及时刷新 需要重新将headerView设置为tableView的tableHeaderView,界面即可正确显示了

    3.当然,使用auto layout时,约束条件必须充分 才能计算出正确高度哦^^

 

UITableView tableHeaderView autolayout自动计算高度

原文:http://www.cnblogs.com/binglin92/p/4993561.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!