G'day すべて
StackMobアプリケーションから入力した空の CoreData ストアから始まる CoreData 駆動型アプリに取り組んでいます。
必要に応じてデータをフェッチして表示する UITableView のサブクラスがありますが、StackMob から初期データを取得するのに最適な時期について少し戸惑っています。ApplicationDidFinishLaunching で (小さな plist ファイルから & ビューをテストするためだけに) 私の CoreData ストアへの入力をトリガーしたとき、私のアプリは既定の画面を表示するのに長い時間を費やしました。UITableView サブクラスでこのメソッドを変更することを検討しています...
- (NSFetchedResultsController *)frc
{
if (_frc) return _frc;
...
return _frc;
}
に...
- (NSFetchedResultsController *)frc
{
if (_frc) return _frc;
...
if ([[_frc fetchedObjects] count] == 0) {
// Spawn NSOperation to get initial data from StackMob.
// & use it to populate my CoreData store.
}
return _frc;
}
その場合、NSOperation をサブクラスにして、その後のデータ更新に再利用できるようにします。[[_frc fetchedObjects] count] == 0
エンティティからすべてのデータをフェッチしているため、チェックしています。
取るべき良いアプローチはありますか?そうでない場合、より良いアプローチは何でしょうか?
私が使用している一部のアプリで見たようなユーザー エクスペリエンスを提供したいと考えています。アイテムがダウンロードされて CoreData ストアに追加されると、「ホーム」画面にアイテムが表示されます。
乾杯 & TIA、ペドロ :)