В раскадровке: NavigationController -> UITableViewControllerIssue Present View Controller с пользовательской схемой URL
appdelegate.swift
func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let navVC = storyboard.instantiateViewControllerWithIdentifier("navViewController") as! UINavigationController
if let tableVC = navVC.topViewController as? UITableViewController {
tableVC.searchText = // URL query param
}
self.window?.rootViewController?.presentViewController(navVC, animated: false, completion: nil)
}
return true
}
Проблема заключалась в том, когда я вхожу с пользовательским URL в Safari во второй раз
appUrl://search?q=...
В первый раз, когда это нормально, откройте правильно, но если я вернусь в Safari, чтобы открыть другой URL, я получил
Warning: Attempt to present <UINavigationController: 0x7fb1fb090000> on <UINavigationController: 0x7fb1fa843400> whose view is not in the window hierarchy!
Xcode жалуется на: '?' должен сопровождаться вызовом, поиском члена или индексом – user2258959
Я немного изменился. Я нахожусь на своем iPad и не могу получить доступ к своему MacBook. ( –
Я изменил на: (self.window? .rootViewController as! UINavigationController) .presentViewController (navVC, анимированный: false, завершение: ноль), но все равно получаю предупреждение – user2258959