是否可以在一个XIB中拥有两个表视图?

时间:2011-07-01 07:31:41

标签: ios iphone xcode uitableview xib

我需要在一个XIB文件中有两个表视图,有没有办法做到这一点?

4 个答案:

答案 0 :(得分:3)

是的,这是可能的。您只需要检查tableview名称或标记,以区分datasource和delegate方法中的tableview。例如,对于numberofRowsInSection数据源方法,您可以这样做。

- (NSInteger)tableView:(UITableView *)tableview numberOfRowsInSection:(NSInteger)section     {

if(tableview==firstTableview)
{   
    return 4;
}
else {
    return 6;
}

}

所以你只需要对每个数据源和委托方法进行检查。希望这有帮助。

答案 1 :(得分:2)

另一个更简洁的方法是将两个不同的UITableViewController添加到XIB并将其设置为不同的类。

Two table view controllers

你的XIB应该是这样的。而不是将表视图数据源和委托连接到文件的所有者,而是将其连接到自己的控制器。

这样,您的代码将变得干净且易于维护。如果你想将该表移动到不同的视图,稍后就可以通过更改IB来完成。

答案 2 :(得分:1)

简单到库选择tableView并放入xib并设置tag = 1 然后在xib上得到drob上的其他表格set tag = 2

您可以通过标记或其ivar名称进行区分;

所以在表的数据源方法和委托中制作正确的if else条件。你也可以隐藏任何特定情况。

意味着使用你的大脑和逻辑。

答案 3 :(得分:-3)

我创建了两张桌子和一张桌子。映射两个表委托和在这个阶段,数据源到.xib文件中的文件所有者我收到了错误。我通过以下方式解决了 在头文件(IBOUTLEt)中添加两个表视图以标识表 对于第1表地图数据源&通过.xib文件委托 我在.m文件中描述的第二个表。 它运行良好.....