dynamic生成UITableViews

好的,我打电话给一个Web服务来取回政策。 用户可以有多个策略,这些策略是有自己的表(请注意,表中没有自己的部分)。 这些表格中可能包含未知数量的行,具体取决于政策修订的数量以及政策本身。 所以我需要dynamic生成这个表到UIScrollView。 有谁知道我怎么能做到这一点? 如果你不了解我,请问。

你可以用编程方式创buildUITableViews

UITableView *tableView = [[UITableView alloc] init]; 

然后将视图控制器设置为表视图的委托和数据源:

 tableView.delegate = self; tableView.dataSource = self; 

并将表视图添加到您的滚动视图,如下所示:

 tableView.frame = CGRectMake(0, 0, 320, 500); //use whatever frame you want here [self.scrollView addSubview:tableView]; 

并且为了跟踪表格视图,可以使用与每个表格关联的标签。 这些可能是最好的定义为您的.m文件顶部的常量。 你可以适当地命名它们,这样你就知道表视图应该是什么样的策略了。 例如,在.m文件的顶部:

 #define kFirstPolicyTableViewTag 1 

然后在创build表视图时:

 tableView.tag = kFirstPolicyTableViewTag; 

那么,在处理任何委托或数据源方法时,请检查标记,以便知道正在处理哪个标记。 例如:

 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { switch (tableView.tag) { case kFirstPolicyTableViewTag: { //return the number of rows for that tag } } } 

我build议创build一个分区表视图。 所以你可以在每个部分加载策略。 你可以给每个部分的部分标题,以提供更多的信息。

N个策略的教科书方法,每个都有M个修订(N和M都是任意的,也可能很大),是UINavigationController,在根目录有一个策略表。 select一行(策略)将推送到包含该策略修订表的策略详细信息视图控制器。