私はUITabbarそれに複数のコントローラを持っています。コントローラーの 1 つはコア データにイベントを追加するために使用され、別のコントローラーは を使用して UITableView のようにイベントを表示するために使用されますNSFetchedResultsController。
私が達成したい動作は次のとおりです。消えると、UITableView は更新を停止し、ユーザーが戻ってくると、テーブル ビュー全体が再読み込みされます。そうしないと、他のコントローラーからイベントを挿入すると、表示されていなくても に新しい行が作成されるため、時間がかかりUITableViewます。
期待どおりに機能しないように見えるため、この動作をどのように達成できるか疑問に思っています。
NSFetchedResultsController のデリゲートを で nil に設定し、への呼び出しとともに でviewWillDisappear復元しました。viewWillAppear[UITableView reloadData]
どういうわけか、新しいデータが表示されません。これは、デリゲートがない場合に NSFetchedResultsController がフェッチを停止する方法が原因であると思われます。
UITableView更新が消えたときに更新を適切に「一時停止」し、コントローラーが再表示されたときにデータセット全体を表示するにはどうすればよいですか?