我在调整表头视图的大小时遇到了麻烦,简单的方法不起作用。
1)创建 UITableView 和 UIView (100x320px) ;
2)将 UIView 设置为 UITableView 的 tableHeaderView;
3)构建和运行。一切都很好。
现在,我想调整 tableHeaderView 的大小,所以我在 viewDidLoad 中添加了以下代码:
self.tableView.autoresizesSubviews = YES;
self.tableView.tableHeaderView = myHeaderView;
self.tableView.tableFooterView = myFooterView;
CGRect newFrame = self.tableView.tableHeaderView.frame;
newFrame.size.height = newFrame.size.height + 100;
self.tableView.tableHeaderView.frame = newFrame;
TableHeaderView 的高度应该显示为200,但显示为100。
如果我写:
self.tableView.autoresizesSubviews = YES;
CGRect newFrame = myHeaderView.frame;
newFrame.size.height = newFrame.size.height + 100;
myHeaderView.frame = newFrame;
self.tableView.tableHeaderView = myHeaderView;
self.tableView.tableFooterView = myFooterView;
然后从200米开始,如我所愿。但是我希望能够在运行时修改它。
我也尝试过这种方法,但没有成功:
self.tableView.autoresizesSubviews = YES;
self.tableView.tableHeaderView = myHeaderView;
self.tableView.tableFooterView = myFooterView;
CGRect newFrame = self.tableView.tableHeaderView.frame;
newFrame.size.height = newFrame.size.height + 100;
self.tableView.tableHeaderView.frame = newFrame;
[self.tableView.tableHeaderView setNeedsLayout];
[self.tableView.tableHeaderView setNeedsDisplay];
[self.tableView setNeedsLayout];
[self.tableView setNeedsDisplay];
重点是: 如何在运行时调整 tableHeaderView 的大小? ? ?
有人能做到吗?
谢谢
我