问题描述
- uitableview的嵌套使用
-
各位大神,你们好。
我创建了一个uitableviewcontroller,该uitableviewcontroller自带的TableView里面放置静态的单元格,以group分组。
然后在若干个单元格中分别添加TableView,这些TableView用来添加动态的单元格。
我把这些TableView以outlet的方式添加的uitableviewcontroller的关联类中,然后设置了它们的delegate和datasource,然后用下面的代码来控制TableView的选择,代码如下所示:- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if (tableView == self.tableView) {
switch (section) {
case 0:{
return 6;
}
break;
case 1:{
return 1;
}
break;
case 2:{
return 1;
}
default:
return 0;
break;
}
}else if (tableView == _attachmentTableView){
return [_localDetailResultDictionary[@"attachments"] count];
}else if (tableView == _approveHistoryTableView){
return [_localDetailResultDictionary[@"approveHistory"] count];
}else if (tableView == _feeDetailTableView){
return [_localDetailResultDictionary[@"applyDetail"] count];
}else{
return 0;
}
}
但是我发现除了第一个条件为真意外,其他条件从来都没有被执行过。
那么第一个问题来了,为啥不执行呢?
接下来,因为这些添加在cell中的TableView是要根据后台传过来的数据进行动态地生成,所以必须要用到 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 代理方法,
但是问题又来了,我不想动原来的静态单元格,所以第二个问题就是如何保持原来静态单元格不动,只复用那些后添加的TableView的单元格用来展示数据呢?
求大神解答,小弟不胜感激。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
解决方案
解决方案二:
可以考虑给每个tableView设定一个tag,自己依据tag处理。
时间: 2024-09-12 16:09:05