一个UIViewController中的两个UITableView

时间:2011-03-01 14:36:41

标签: iphone objective-c uitableview

我有一个UIView。它包含两个UIScrollView,每个人UIScrollView都包含一个UITableView。

当我用数据填充表时,第一个表填充数据,但第二个表仍为空。

可能出现什么问题?

调试后我看到了

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

仅在第一个表中被调用。但是

(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
每张桌子都叫p !! - >委托或数据源也没有问题...

请帮助。

我正在使用逻辑:

if(tableView == self.tableU1){
  ... 
  } 
else{
...
}

用于区分表格。

3 个答案:

答案 0 :(得分:2)

这个问题可能有用:

iPad - More than one UITableView in the same screen

您完全确定已将两个表的代理连接起来,对吧?仔细检查!

答案 1 :(得分:0)

确保为两个表设置委托。它必须是你的控制者。如果您正在使用“界面”构建器,请尝试设置委托manualy:

tableView.delegate = self;

答案 2 :(得分:0)

其他答案暗示了这一点,但请注意,cellForRowAtIndexPath:是数据源方法,而viewForHeaderInSection:是委托方法。看起来几乎可以肯定你已经将你的代表连接到两者,只有你的数据源只有一个。