#iphone #objective-c #ios #core-data
#iPhone #objective-c #iOS #core-data
Вопрос:
Я использую CoreData
в своем приложении, которое принимает координаты и сохраняет их (вместе с другими данными) в постоянном хранилище.
Работа приложения выглядит следующим образом: пользователь нажимает кнопку, координаты добавляются каждый раз, когда пользователь перемещается, и они помещаются в managedObjectContext
. Пользователь нажимает другую кнопку, и приложение перестает вводить координаты в managedObjectContext
и спрашивает пользователя, хочет ли он сохранить свои данные. Если пользователь хочет сохранить свои данные, я звоню [managedObjectContext save:amp;error];
и проверяю, нет ли ошибки. Если пользователь не хочет сохранять, координаты просто остаются в managedObjectContext
до тех пор, пока приложение не будет полностью закрыто и снова открыто.
Как я могу удалить те точки, которые пользователь не хочет сохранять?
Ответ №1:
[managedObjectContext rollback]
будут отменены все изменения, внесенные в контекст с момента последнего сохранения. Если вам нужен более точный контроль зернистости, добавьте NSUndoManager
в контекст и извлеките документы! 🙂
Комментарии:
1. Это сделало свое дело. Спасибо! Я не знал, что использовать из документов. 6 минут, пока я не смогу принять…
2. Привет, XJones, небольшой вопрос… есть ли какой-либо способ отменить изменения после сохранения контекста управляемого объекта?
3. Я не знаю, каким образом.