Правильное время для удаления постоянного хранилища, чтобы удалить все записи объекта - PullRequest
1 голос
/ 17 октября 2010

Я использую UITableViewController, содержащий UITableView и UISearchTableView.В таблице перечислены, например, 1000 записей.Я хочу предоставить пользователю кнопку, чтобы удалить все записи определенного объекта.Поскольку цикл по всем управляемым объектам и сохранение контекста занимает очень много времени, я подумал об удалении путем удаления постоянного хранилища и перестройки стека.

Теперь к моим вопросам: как я могу сделать это в UITableViewController?Я не хочу перезапускать приложение для удаления, поэтому хочу перенести код из делегата приложения.

1 Ответ

0 голосов
/ 17 октября 2010

Чтобы удалить постоянное хранилище, необходимо закрыть стек основных данных, удалить постоянное хранилище, а затем перестроить его.

Я бы просто использовал метод tableview beginUpdate, чтобы заморозить таблицу, затем обнулил контроллер fetchedResults, а затем стек Core Data. Удалите постоянное хранилище, затем перестройте стек и создайте новый контроллер полученных результатов. Затем сообщите endUpdate, а затем скажите таблице, что нужно перезагрузить данные. Все это должно занять короткое время, незаметное для пользователя.

...