デリゲート メソッドでは、データが非同期で受信されることを考慮する必要があります。データ モデルがセクションの配列で構成され、配列の各要素がタイトルと行データの配列を含む辞書であると仮定してみましょう。あなたnumberOfRowsInSection
は次のようになります:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [sectionsArray count];
}
が空の場合sectionsArray
、テーブル ビューはセクションがゼロであることを認識し、何も表示されません。非同期データが入ってきたら、入力sectionsArray
してから を呼び出します[tableView reloadData]
。numberOfRowsInSection
が再度呼び出され、今回はゼロ以外のセクション数が返され、テーブルが自動的に作成されます。
TLIndexPathToolsなどのサードパーティ ライブラリを使用する場合は、これらすべてを簡単にセットアップできます。データを自動的にセクションに編成し、デリゲート メソッドの実装に役立つ多くの便利なメソッドを備えた標準化されたデータ モデルを提供できます。JSONサンプル プロジェクトを実行してみて、非同期読み込みに関する私のコメントを参照してください。