0

プラスボタンのあるテーブルビューを備えた単純なアプリケーションがあります。ユーザーがそれをクリックすると、日付、名前、金額、およびタイトルを入力できるモーダル ビューが表示されます。保存をクリックすると、VC が終了し、情報がデータベースに保存されます。テーブル ビューが更新され、その情報が表示されます。

したがって、ユーザーは名前、タイトル、日付、金額をビュー コントローラーに追加すると、次のようにテーブル ビューに変換されます。

  • CelltextLabel = 名前とタイトル
  • DetailTextLabel = 金額
  • セクション ヘッダー = 日付

したがって、常に 4 セットの情報がありますが、これは少し乱雑に見えます。Core Data と NSFetchedResultsController を使用しています。私は検索しましたが、これへの参照が多すぎて見つかりませんでしたが、日付だけでなく日付とタイトルをセクションヘッダーにすることは可能ですか?

もしそうなら、これに関する助けをいただければ幸いです。

セクション ヘッダーを構成する主要コンポーネントのコードは次のとおりです。

NSFetchedResultsController *theFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:@"occasion.dateOfEvent" cacheName:nil];

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return [[self.fetchedResultsController sections] count];
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    id  sectionInfo = [[_fetchedResultsController sections] objectAtIndex:section];
    return [sectionInfo numberOfObjects];
}

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
    return [[[self.fetchedResultsController sections] objectAtIndex:section] name];
}

CellforRowAtIndex は次のとおりです。

cell.textLabel.text = [NSString stringWithFormat:@"%@ %@", info.name, info.title];
cell.detailTextLabel.text = info.amount;

どうもありがとう

4

1 に答える 1