在我的UITableView中,我有一个tableHeaderView,它应该根据内容调整自己的大小。调整大小很好,但是,tableHeaderView模糊了前几个单元格。显然改变tableHeaderView的框架不会重新组织视图的其余部分。
我已经尝试过调用[self.tableView layoutSubViews]
和[self.tableView setNeedsLayout]
,但这些也无济于事。还尝试从Interface Builder中提供tableHeaderView一个插座来更改其上的框架,但这也不会重新组织tableView。
如何在不隐藏任何单元格的情况下更改tableHeaderView的大小,重新组织tableView的其余部分?
答案 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;