Tengo un problema básico al sincronizar openWithCompletionHandler: (UIManagedDocument) con las actividades principales.iOS5.1: tareas de sincronización (aguarde la finalización)
Situación: Tengo una clase singleton que administra un UIManagedDocument compartido. Esta clase proporciona un método que debe entregar el documento en un estado normal (es decir, crearlo o abrirlo, lo que sea necesario). Pero debido a que openWithCompletionHandler: realiza su trabajo principal de forma asincrónica en segundo plano, mi programa debería esperar con la configuración de los fetchedResultsController hasta que el documento esté realmente abierto. El método "viewWillAppear" (actualmente) no produce resultados útiles cuando la base de datos no está lista. Esperar estaría bien para mí, pero ser notificado probablemente sería la mejor manera. Tal vez viewWillAppear resulta no ser el punto correcto para setupFetchedResultsController porque no se llamó en un runloop.
¿Hay un patrón estándar para lograr esto?
Poco más de fondo (no tan importante, supongo) Estoy trabajando en una pequeña aplicación iOS 5.1 que implica un CoreData UIManagedDocument. Me parecí al ejemplo de la Lección 14 del curso de Stanford del otoño pasado en iTunes-U. Todo funcionaba bien hasta que traté de separar el manejo del UIManagedDocument de la clase UITableViewController en una clase separada que manejaba mi documento. En la versión original, FetchedResultsController se configuró en el controlador de finalización.