Недавно я работаю с приложением расписания в iOS, и у меня возникают проблемы с Core Data.
Мое приложение имеет основной пользовательский интерфейс, похожий на оригинальное приложение календаря, созданное Apple, и я сохраняю все данные о своих событиях в базе данных Core Data.
Я создаю UIManagedDocument для извлечения данных из базы данных с помощью его NSManagedObjectContext, и все работает нормально.
Однако мне нужно использовать NSManagedObjectContext для получения данных несколько раз в нескольких разных контроллерах представления во время выполнения. И каждый раз, когда я это делаю, мне нужно повторно открывать UIManagedDocument, но открытие документа занимает слишком много времени (это может занять 2 секунды или даже больше, мне нужно отобразить счетчик в поле зрения).
Итак, вот мои вопросы:
- Как правильно открыть управляемый документ? (Я имею в виду, например, открыть его во время обеденного перерыва?)
- Есть ли способ открыть управляемый документ только один раз и оставить его открытым во время выполнения? (Так что я могу все время использовать его контекст)
- Хранятся ли данные в управляемом документе, который я создаю? (Я обнаружил, что если я удалю документ, данные исчезнут)
Спасибо.