根据UITableView
,我有两个UISegmentControl.selectedSegmentIndex
。第一个表是分组样式,第二个表是 plain 。
NSFetchedResultsController用于第一个UITableView,而NSMutableArray用于第二个。
在我的 numberOfSectionsInTableView :
中return [_fetchedResultsController.sections count];
在这种情况下,第二个UITableView的数据显示3次(因为FirstTableView部分计数= 3)。
我想要第二个tableView numberOfSectionsInTableView
return 1;
答案 0 :(得分:1)
在返回计数之前,您应该检查您正在显示哪个表视图。您可以使用tableView
输入参数。
例如: -
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
if (tableView == self.firstTableView) //or (tableView == firstTableView)
return [_fetchedResultsController.sections count];
else
return 1;
}
答案 1 :(得分:0)
您可以使用以下条件......
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
if(tableView == firstTableView)
return 1;
else if (tableView == secondTableView)
return 2;
//... and so on you can do like this....
}
一切顺利!!!
答案 2 :(得分:0)
我猜你要为两个表视图设置相同的数据源。如果是这种情况,那么请在您的:
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
if(tableView == firstTableView){ //assuming you have a reference to the first table view
return [_fetchedResultsController.sections count];
}else{
return 1;
}
}
您必须在所有数据源方法中执行此操作。相反,更容易使tableviews的数据源不同。
要执行此操作,您可以从对象库中拖动对象(蓝色立方体)并将其类设置为SecondTableDatasource
。然后将此对象设置为第二个表的数据源,并在该类中实现相应的数据源方法。
答案 3 :(得分:0)
您可以为每个tableView添加标记,并检查numberOfSectionsInTableView