2

CoreDataTableViewController追加情報で編集: cs193pに基づくアプリを使用しています。というエンティティのインスタンスを削除するとPositionprepareForDeletionすぐに呼び出されます。しかし、を呼び出すsaveToURLとき、またはデータベースが自動保存されているときに、prepareForDeletionが再度呼び出されます。

これはあるべき姿ですか?防げますか?

4

2 に答える 2

0

それはおそらくあるべき姿です。UIManagedDocument は 2 つの ManagedObjectContext を使用します。子コンテキスト (document.managedObjectContext) が保存されると、その親コン​​テキストが保存されます。親コンテキスト内のオブジェクトは、親がprepareForDeletion永続ストアに保存されるとすぐに呼び出されます。

于 2014-12-01T02:57:27.647 に答える
0

a を設定しBOOL isDeleting、プロセスが既に実行されているかどうかを確認します。

- (void) prepareForDeletion
{
    if ( isDeleting ) 
        return;


    /* handle the rest of the deleting process */
    isDeleting = YES;


    if ( /* the process has finished deleting */ )
        isDeleting = NO;
}
于 2012-06-30T01:49:43.783 に答える