故事板上的iOS两个UITableView如何处理

故事板上的iOS两个UITableView如何处理,uitableview,xcode4.2,storyboard,ios5,Uitableview,Xcode4.2,Storyboard,Ios5,在我的iPad应用程序情节串连板设计中,添加了两个表格视图 一个表视图用于显示文件夹名,另一个表视图用于显示文件名。选择文件夹表视图单元格时,所选文件夹中的文件需要显示在其他表视图(文件表视图)中 我的问题是 我对这件事感到困惑 如何在ViewController中为每个表视图添加委托和数据源?或者可以在自定义类(而不是ViewController)中为每个表视图添加数据源和委托吗 和 如何处理单元格的选择 请帮忙 首先:为什么不在占据整个屏幕的推式viewController上显示文件

在我的iPad应用程序情节串连板设计中,添加了两个表格视图

一个表视图用于显示文件夹名,另一个表视图用于显示文件名。选择文件夹表视图单元格时,所选文件夹中的文件需要显示在其他表视图(文件表视图)中

我的问题是

我对这件事感到困惑

  • 如何在
    ViewController
    中为每个表视图添加委托和数据源?或者可以在自定义类(而不是ViewController)中为每个表视图添加数据源和委托吗

  • 如何处理单元格的选择

请帮忙

首先:为什么不在占据整个屏幕的推式viewController上显示文件呢?对我来说似乎更直观

如果您想使用两个表视图,并且假设它们使用动态单元格,那么:
1,在视图控制器的.h文件中

指定两个tableView属性,如下所示:

@property (weak, nonatomic) IBOutlet UITableView *foldersTableView;
@property (weak, nonatomic) IBOutlet UITableView *filesTableView;
实现UITableVIew的两个委托协议

@interface ViewController : UIViewController <UITableViewDataSource, UITableViewDelegate> 
4,执行选择:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (tableView.tag == 1) {
        //fill filesArray with the objects you want to display in the filesTableView...
        [filesTableView reloaddata];
    } else {
        //do something with the selected file
    }
}

希望我一切都正确。如果您使用的是pre XCode 4.4,请不要忘记合成.m文件中的属性。

如果您使用的是多个表,请不要忘记根据需要隐藏:

- (void)viewWillAppear:(BOOL)animated
{
    [self.table2 setHidden:YES];
    [self.table1 setHidden:NO];
    // Probably reverse these in didSelectRow
}

是的,您可以为不同的表视图添加不同的数据源。只需为每个表视图定义
IBOutlate
。您可以根据我的知识将选项卡视图与其
tab
属性分开。这将起作用。您能告诉我如何为每个表视图定义IBOutlate吗。在我设置了IBOutlate之后,我应该创建一个表视图的实例并将其添加到视图控制器上吗?请看下面的答案,这显示了我在上面的评论中所说的内容它应该是(tableview.tag==1)而不是(tableview.tag=1)
- (void)viewWillAppear:(BOOL)animated
{
    [self.table2 setHidden:YES];
    [self.table1 setHidden:NO];
    // Probably reverse these in didSelectRow
}