Core Data のかなり基本的な実装を使用して、アプリにいくつかのオブジェクトを保存しています。このコードは、Xcode が作成するボイラー プレート コードとほぼ同じで、モデルは可能な限り単純です (リレーションシップも持たず、スタンドアロンのマネージド オブジェクトのみです)。
iOS7 ではすべて正常に動作しますが、iOS 6 では、テーブル ビュー iOS でオブジェクトを削除すると行が削除され、fetchedResultsController はすぐに NSFetchedResultsChangeInsert を実行し、削除されたオブジェクトをテーブル ビューに戻します。
テーブルビューから移動してからテーブルビューに戻ると、行が削除されたことを確認して行が消えますが、コントローラーが iOS 6 で NSFetchedResultsChangeInsert を呼び出すのはなぜですか? これがiOS 7でもまったく呼び出されていないことを確認できます。
Xcode で空白のアプリを作成し、コードを私のものと比較して、何かを台無しにしておらず、コードが同じであることを確認しました。誰でもこの問題を説明できますか? 以前に Core Data を使用したことがないため、明らかな何かが欠けている可能性があります。
私のコードの唯一の違いは、オブジェクトを削除すると、ドキュメント ディレクトリに jpg が存在する場合はそれも削除されることです。