UITableView tableViewHeader背景被切断

时间:2012-05-11 07:55:41

标签: objective-c ios

我有一个自定义视图,我正在尝试加载到tableViewHeader中。奇怪的是,背景的底部总是被切断。这就好像导航栏按下按钮,而不是视图的其余部分。

笔尖看起来像这样:

Nib image

我在tableviewcontroller中将它设置为这样:

[[NSBundle mainBundle] loadNibNamed:@"MenuNav" owner:self options:nil];
[self.tableView setTableHeaderView:headerView];

这就是它在模拟器中的样子。按钮也不处理下半部分的点击。

Image in Simulator

我尝试过: - 将子视图放到前面:

[self.tableView bringSubviewToFront:headerView];

-setting需要tableview的布局:

[self.tableView setNeedsLayout]

- 我还检查了视图的框架是否正确。

任何想法?谢谢!

修改

我找到了罪魁祸首。我不得不取消选中IB中的Autoresize Subviews: http://i.imgur.com/jH2bs.png

2 个答案:

答案 0 :(得分:1)

也许你可以试试:

  • (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;

返回您的视图以及Jacky Boy所说的返回标题高度的方法:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section;

答案 1 :(得分:0)

您是否尝试使用自动调整视图?我将在您的代码中添加类似的内容:

headerView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;