Ios 单个UIViewController中存在两个UITableView问题

Ios 单个UIViewController中存在两个UITableView问题,ios,cocoa-touch,uitableview,Ios,Cocoa Touch,Uitableview,我见过类似的问题,但没有一个是同一个问题 在UIViewController中,我有两个UITableViews tableView1和tableView2(在UIScrollView中)。两个表上的数据源和委托都设置为UIViewController,它实现UITableViewDelegate和UITableViewDatasource协议。UIViewController本身位于UIAbbarController中,如下所示: 超宽带控制器 UIViewController UITa

我见过类似的问题,但没有一个是同一个问题

在UIViewController中,我有两个UITableViews tableView1和tableView2(在UIScrollView中)。两个表上的数据源和委托都设置为UIViewController,它实现UITableViewDelegate和UITableViewDatasource协议。UIViewController本身位于UIAbbarController中,如下所示:

  • 超宽带控制器
    • UIViewController
      • UITableView(tableView1)
      • UIScrollView
        • UITableView(tableView2)
在tableView:cellForRowAtIndexPath中,我检查哪个表并相应地填充:

if (tableView == _tableView1) {
    //do stuff for tableView1
} else {
    //do stuff for tableView2
}
当UIViewController出现时,只有tableView1填充了数据。点击另一个选项卡,然后再次点击,最终填充tableView2

如果tableView1的委托和数据源设置为nil,则tableView2永远不会填充。似乎只有在填充tableView1后,才会填充tableView2

有人能帮忙吗


非常感谢。

在我的问题中,我声明IVAR是
\u tableview 1
\u tableview 2
。它们实际上是
\u indexTableView
\u tableView
。将
\u tableView
更改为
\u gridTableView
似乎解决了这个问题

您是否在
表格视图:numberOfRowsInSection:
numberOfSectionsInTableView:
中执行相同的签入操作?您厌倦了吗?如果(tableView==\u tableView1){//do stuff for tableView1}如果(tableView==\u tableView2){//do stuff for tableView2}表格视图在另一个表格视图旁边的滚动视图中?例如,我不想使用那个UI…@jonkroll是的,在那些方法中也这么做。谢谢。@pKoul谢谢,是的,我也试过了