2013-03-25 3 views
0

Я обновил методы хранения своего приложения от простой записи в файл в CoreData. Для того, чтобы сохранить все данные из предыдущей версии я написал метод миграции, который приложение делегат вызывает вОстановить AppDelegate от загрузки ViewController при вызове другого метода

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    [self checkForPreCoreDataFilesAndMigrate]; 
    //normal launching 
} 

Метод checkForPreCoreDataFilesAndMigrate переносит все файлы из предыдущей версии в базе данных CoreData.

Моя проблема теперь в том, что я хочу, чтобы appdelegate не выполнял другие вещи, такие как загрузка Main ViewController с пустой базой данных (которая в основном работает, но запутывает процесс миграции).

Как я могу это достичь? Есть ли решение, где я все еще могу показать UIAlterView с UIProgressView, которые были настроены методом миграции.

+0

Вы делаете что-то асинхронный в checkForPre ...? Выполнение должно продолжаться только после возвращения из этого метода, поэтому я смущен вашей проблемой. –

ответ

1

вы можете использовать следующий метод для его

[self performSelector:@selector(checkForPreCoreDataFilesAndMigrate) onThread:[NSThread mainThread] withObject:nil waitUntilDone:YES]; 
Смежные вопросы