如何在UITableviews中创建数组数组

时间:2012-08-14 07:53:02

标签: ios ios5 uitableview

我有两个tableViewControllers,我的第一个tableView包含一个名为文件夹的项目列表,点击后我将打开另一个名为ItemsInfolder的tableView并显示它们是否存在或者它将为空。

所以为此,我知道ItemsInFolder View应该是一个数组数组,每个数组都在索引位置(行位置),但我很困惑,关于如何做,如何调用每个索引上出现的数组点击每个文件夹。

根据以下评论更新

//FolderTableView
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{    
   ItemsTableViewController *selectedFolder = [[ItemsTableViewController alloc] initWithNibName:@"ItemsTableViewController" bundle:nil];    


    selectedFolder.selectedfolder = [indexPath row];
    [self.navigationController pushViewController:selectedFolder animated:YES];


}

//ItemsTableView

-(void)xyz operation
{

[m_ItemArray addObject:item];
[appDelegate.2dArray addObject: m_ItemArray];
}

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

    // Return the number of rows in the section.
    return  [[appDelegate.2dArray objectAtIndex:m_selectedfolder]count];(selected folder index coming from, folderTable)
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSMutableArray *testArray = [appDelegate.2dArray objectAtIndex:[indexPath row]];
    tableCell.items.text = [testArray objectAtIndex:[indexPath row]];       

    return tableCell;
}

所以朋友们,请帮帮我。

此致 Ranjit

1 个答案:

答案 0 :(得分:0)

考虑一个arrayOfFolders全局和初始化的,包含您的文件的数组,遵循以下层次结构:

arrayOfFolders :
{
   [0]            //Folder 0 (NSArray)
   {
      file1
      file2
      file3
   }
   [1]            //Folder 1 (NSArray)
   {
      file4
      file5
   }
}

当你点击tableView中的文件夹时,得到这样的子数组:

-(void)didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    //To retrieve your array within your array at the seleted index
    NSArray * arrayOfItemsInFolder = [[NSArray alloc] initWithArray:[self.arrayOfFolders objectAtIndexPath:indexPath.row] copyItems:YES];
    //Do your stuff
}

这对你来说是否合适?