i キューと結果コントローラーを組み合わせていくつかのコアデータオブジェクトを更新して表示します。私はいくつかの例外と問題があります(このスレッドNSOperationQueue and NSFetchedResultsControllerを参照してください)。長い研究の後、私はNSFetchedResultsControllerが問題であることを知り、私は自分自身の更新ロジックをuitableview用に書くことに決めました。UITableView(NSFetchedResultsControllerロジックを置き換える)を手動で更新します。
私の新しいストラテジーは以下のとおりです。 - 私の見解負荷iは配列にコアデータからすべてのオブジェクトを取得し、それらに を表示すると - 20秒後に私は2番目の内側(ウェブおよび更新コアデータから新しいデータをロードしようスレッド/またはnsoperation)このスレッドは、独自のobjectcontextを使用しています...私のメインコンテキストは変更を無視します! - 私のオブジェクトをもう一度フェッチするのですが、一時的な配列 - 私は私のuitableviewを更新する必要がありますが、私は両方の配列を比較し、削除したり、セルを挿入する方法を知っていません...
この素晴らしいアニメーションを挿入して削除することが重要です。私はすべてのオブジェクトが1つのセクションにのみ私の場合!しかし、私は "車"と "ホテル" => 2つのセクションで異なるオブジェクト(2つのデータソース配列)を持つビューを持っている可能性があります。
私はuitableviewを更新するための良い例を教えてください。
私が使用:
- (void)controller:(NSFetchedResultsController *)controller didChangeObject:(id)anObject atIndexPath:(NSIndexPath *)indexPath forChangeType:(NSFetchedResultsChangeType)type newIndexPath:(NSIndexPath *)newIndexPath
私はNSFetchedResultsController
ロジックを交換する必要があります。
ありがとうございました!
viewWillAppearは1回だけ呼び出され、reloadDataはアニメーションの挿入と削除を行いません。 – user547064