私は現在iPad用のシンプルなCoreDataアプリに取り組んでいますが、いつ明示的に保存する必要があるのか正確にはわかりません。自動保存があることは知っています。ただし、プログラムがクラッシュしないようにするには、明示的に保存する必要があると感じています。プログラムの概要は次のとおりです。
〜これは、入力するテキストフィールドとセグメント化されたコントロールのセットをユーザーに提示するフォームプログラムです。(調査に記入したり、名前、年齢などに関する質問に答えたりする人を考えてみてください)。
〜これらのフィールドはいくつでも入力できます。それらのどれも必須ではありません。
〜ユーザーはいつでもフォームを保存およびロードでき、一度に複数の異なるフォームを保存できます。保存したドキュメントを削除できます
〜私は現在、1つのエンティティオブジェクトがフォームを表すコアデータを使用してこのデータを保存しています。このエンティティオブジェクトには、ユーザーが入力したすべてのフィールドと各フィールドへの応答のリストが含まれています。
〜このエンティティオブジェクトのNSManagedObjectサブクラスもあります。したがって、フィールドに入力するたびに、などの操作を行いますcurrentForm.name = textfield.text
。
さて、私の質問は、いつ明示的に保存する必要があるのかということです。コアデータが即時保存を実行するなどのコードを記述した場合currentForm.name = textfield.text
、またはそうするように明示的に指示する必要がありますか(自動保存を待ちたくないと仮定して)?他に保存しなければならないことはありますか?保存したドキュメントを削除した後、保存する必要がありますか?
ありがとう!