Я не уверен, как справиться с этой ситуацией, поскольку я очень новичок в разработке iOS и Swift. Я выполняю выборку данных так:
func application(application: UIApplication!, performFetchWithCompletionHandler completionHandler: ((UIBackgroundFetchResult) -> Void)!)
{
loadShows()
completionHandler(UIBackgroundFetchResult.NewData)
println("Background Fetch Complete")
}
Функция loadShows() анализирует кучу данных, которые она получает с веб-сайта, загруженного в UIWebView. Проблема в том, что у меня есть таймер, который ждет 10 секунд или около того в функции loadShows. Это позволяет полностью загружать javascript на странице, прежде чем я начну синтаксический анализ данных. Моя проблема заключается в том, что обработчик завершения завершит работу до моего loadShows().
Что я хотел бы сделать, это добавить bool для "isCompletedParsingShows" и сделать завершающую строку completeHandler до завершения, пока это bool не будет истинным. Каков наилучший способ справиться с этим?