更改tableHeaderView的高度会隐藏单元格

时间:2011-03-30 09:29:00

标签: iphone uitableview layout frame

在我的UITableView中,我有一个tableHeaderView,它应该根据内容调整自己的大小。调整大小很好,但是,tableHeaderView模糊了前几个单元格。显然改变tableHeaderView的框架不会重新组织视图的其余部分。

我已经尝试过调用[self.tableView layoutSubViews][self.tableView setNeedsLayout],但这些也无济于事。还尝试从Interface Builder中提供tableHeaderView一个插座来更改其上的框架,但这也不会重新组织tableView。

如何在不隐藏任何单元格的情况下更改tableHeaderView的大小,重新组织tableView的其余部分?

2 个答案:

答案 0 :(得分:23)

在调整内容大小后,尝试设置UITableView的tableHeaderView属性。

[self.tableView setTableHeaderView:self.myResizedTableHeaderView];

解决了我的问题。希望它有所帮助。

答案 1 :(得分:4)

我不知道你是如何创建UITableView的,但是我尝试使用像你这样的tableHeaderView创建一个并且它正在调整大小。

我创建了一个继承自UITableViewController

的类
@interface MyTableViewController : UITableViewController {

}

@end

并且为了实现,在viewDidLoad中,我添加了:

UIView *header = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)];
[header setBackgroundColor:[UIColor redColor]];
self.tableView.tableHeaderView = header;

enter image description here