私は、テーブルビューのNSFetchedResultsController
表示する「場所」を持っているが、私は別のビューコントローラに表示されるべき場所のセットを更新するとき、私のFRCは、テーブルビューを更新しません。NSPredicateを追加すると、NSFetchedResultsControllerデリゲートが停止を停止するのはなぜですか?
これは一般的な問題です。私の特定のケースでは、すべてが正常に動作し、私はNSPredicate
を削除(およびちょうどすべての場所を取得する)ときので、私のFRCをバックアップNSPredicate
を中心に展開しているようです。
私のクエリは写真(私はCS193Pて働いています)と1対多の関係を持っている
@"ANY photos.isFavorite == %@", [NSNumber numberWithBool:YES]
場所です。私のFRCは、関連するテーブルなどの変更を監視するように設定されていないのでしょうか?
私の状況に関する追加情報のビット:
- 私が最初にアプリケーションをロードするとき、私の「場所」テーブルは、常に正確であると私のコアデータの更新とクエリが、大丈夫に見えます。
- 私のFRC は、アプリケーションの負荷で既に存在している更新行を行います。実行時に新しい行/セクションを挿入するだけではありません。
- 私はただ1つのMOCを使用しています。
- My
sectionNameKeyPath
is not set to a transient attribute. - My
cacheName
is set to nil.
これはそれですね。レコードのために、FRCはフェッチしようとしているもの以外のエンティティの変更を受け取りません。この問題を回避するには、関係するエンティティ(私の場合は関連する* *)を手動で「ダーティ」にして、FRCにその変更が表示されるようにします。どうもありがとうございました! – ladenedge
よろしくお願いいたします。 –