UIView不在两个标题视图中显示

我正在开发一个iPad应用程序。 由于某些原因,我需要在同一个视图控制器中显示two tableviews 。 我在xib创build了一个UIView ,并将一个outlet连接到该view controller 。 我需要在这两个tableviews中将这个视图显示为tableHeaderView 。 当我试图将这个视图分配给both header views ,它只显示在second tableview 。我希望有一个单一的实例,该视图。 所以只有在我最后指定的观点中才显示出来。 我怎么能克服这个? 任何帮助,将不胜感激。

这里是我的代码。

 [energyTableView setTableHeaderView:tableHeader]; [maintenanceTableView setTableHeaderView:tableHeader]; 

@CodeBySteveZ

正如他所说,我创build了一个xib并尝试过。 而我仍然无法得到解决scheme。 我做错了什么?这是我如何尝试。

 NSArray *topLevelObjects = [[NSBundle mainBundle]loadNibNamed:@"tableHeaderCell" owner:nil options:nil]; [energyTableView setTableHeaderView:[topLevelObjects objectAtIndex:0]]; [maintenanceTableView setTableHeaderView:[topLevelObjects objectAtIndex:0]]; 

我认为这也是我之前做的事情。

你将不得不创buildtableHeader的另一个实例。 一个UIView一次只能存在一个可视子树中。 使用IB可以复制元素并创build它的2个实例。 或者如果你用这个元素创build一个单独的xib,你可以通过代码加载这个特定的xib两次,每个表头都加载一次。

@RA我知道它的繁琐编程,但你可以试试这个

  UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(XXX, YYY, XXX, YYY)]; UILabel *labelView = [[UILabel alloc] initWithFrame:CGRectMake(XXX, YYY, XXX, YYY)]; [headerView addSubview:labelView]; energyTableView.tableHeaderView = headerView; 

同样的,向其他tableview添加一个den release它。

  [labelView release]; [headerView release]; 

希望能帮助到你。

一个视图不能出现在两个地方….说简化的一个视图==一个超视图