インデックス パスの cellForRow のテーブルビューに 2 つの異なるインデックス パスを実装する必要があります。
これについて最善の方法は何ですか。
インデックス パスの cellForRow のテーブルビューに 2 つの異なるインデックス パスを実装する必要があります。
これについて最善の方法は何ですか。
何を求めているのか正確にはわかりませんが、NSFetchedResultController からの結果を含む 1 つのセクションと、他のソースからのデータを含む別のセクションを含むテーブルが必要なようです。これは簡単です。データが複数のセクションにある必要がない場合は、非常に簡単です。セクション 0 のデータを fetchedResultController から取得し、セクション 1 のデータを別のものから取得するだけです。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 2;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
if(section == 0){
id sectionInfo = [[fetchedResultsController sections] objectAtIndex:section];
return [sectionInfo numberOfObjects];
}else{
return self.someArray.Count;
}
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
if(indexpath.section == 0){
static NSString *CellIdentifier = @"data cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
NSObject *foo = [self.fetchedResultController objectAtIndexPath:indexPath];
//configure cell
return cell;
}else{
static NSString *CellIdentifier = @"some other cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
//configure cell
return cell;
}
}