从不同的数据源加载三个表视图

时间:2010-11-15 14:32:54

标签: xcode uitableview nsmutablearray datasource

我在视图上有三个uiTableView。

我创建了三个不同的NSMutableArray,它们加载了不同的数据。

我需要将其中一个NSMutableArray作为其中一个UITableView的数据源。

我可以通过表单的viewDidLoad分配所有三个UITableViews数据源。

但我真正需要做的是将每个UITableView数据源分配给不同的NSMutableArray。

我该如何执行此任务?

感谢

1 个答案:

答案 0 :(得分:2)

如果所有三个UITableView共享相同的数据源对象(包含所有三个数组的对象),那么只需使用if语句来区分要求数据的表视图:

- (NSInteger)tableView:(UITableView *)tableView 
 numberOfRowsInSection:(NSInteger)section
{
    // If table 1 is asking, give it table 1 data...
    if (tableView == myTableView1)
    {
        // Assume all sections have 3 rows each for
        // purposes of simple demonstration...
        return [dataSourceForTable1 count];
    }

    // If table 2 is asking, give it table 2 data...
    if (tableView == myTableView2)
    {
        // Assume all sections have 3 rows each for
        // purposes of simple demonstration...
        return [dataSourceForTable2 count];
    }

    // If table 3 is asking, give it table 3 data...
    if (tableView == myTableView3)
    {
        // Assume all sections have 3 rows each for
        // purposes of simple demonstration...
        return [dataSourceForTable3 count];
    }

   // The compiler will complain if we don't have
   // a final return since it's possible none of the 
   // if statements will be true ...
   return 0;
}