У меня есть функция 3d touch в моем делете делегата для shortcutitems, и она должна создать экземпляр viewcontroller, когда элемент 3d touch щелкнул с iphone.3d touch swift 3 не открывается viewcontroller
Вот код:
func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
if shortcutItem.type == "com.kevinvugts.addStuf" {
let sb = UIStoryboard(name: "Main", bundle: nil)
let exerciseVC = sb.instantiateViewController(withIdentifier: "exerciseVC") as! exerciseVC
let root = UIApplication.shared.keyWindow?.rootViewController
root?.present(exerciseVC, animated: false, completion: {() -> Void in
completionHandler(true)
})
}
}
Этот код результаты в этом предупреждения/ошибки:
Warning: Attempt to present <ActiveRest.exerciseVC: 0x131d39320> on <ActiveRest.ViewController: 0x131d0e470> whose view is not in the window hierarchy!
Has это ничего общего с задержкой?
Спасибо за помощь!
С уважением.
но это вызвано в делете делегата приложения –
, вы не можете представить viewcontroller из 'appdelegate', потому что ваша' viewHierarchy' не готова в 'appdelegate'! – Lion
Я смотрел этот урок и делал то же самое: https://www.youtube.com/watch?v=NO9E5KxixOw –