プッシュ通知が到着したときに私のアプリケーションで特定のビューを開こうとしましたが、このビューは分割ビューの詳細ビューでモーダルに表示されており、実行できませんでした。didReceiveRemoteNotification presentViewController in splitView
私はちょうどEventsViewControllerを提示しているトピックに関する多くの答えの一つを試していないが、明らかにこの方法は、分割ビューに接続され、もはや孤立VCを離れて。
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let navigationController = storyboard.instantiateViewControllerWithIdentifier("NavigationControllerMessages") as! UINavigationController
let dVC:MessagesViewController = navigationController.topViewController as! MessagesViewController
dVC.vehicleLicensePlate = "ABC"
dVC.vehicleName = "My car"
self.window?.rootViewController?.presentViewController(navigationController, animated: true, completion: {})
}
また、私は実際に動作しますが、私はEventsViewControllerを取得する階層ビューを登る方法がわからない分割ビューを提示しようとしている:
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let destinationViewController = storyboard.instantiateViewControllerWithIdentifier("SplitInStoryboard") as! SplitViewController
self.window?.rootViewController?.presentViewController(destinationViewController, animated: true, completion:nil)
}
質問はそうEventsViewControllerを提示する方法でありますルートビューコントローラとビューの間ですべてのビューを接続できますか?
誰でも私を助けてくれることを願っています。私はこれを何時間も苦労してきました。前もって感謝します!
このデリゲートは実行時にいつでも呼び出すことができるので、あなたは 'didReceiveRemoteNotification'でこの種のアクションを実行する必要はありません。ビュー・コントローラーを任意に押すと、ユーザーの対話が中断する可能性があります。また、Apple Framework Referenceによると、「できる限り、いつでもこのアプリケーションの代わりに 'application:didReceiveRemoteNotification:fetchCompletionHandler:'メソッドを実装してください」と言ってください。 – guillaume
十分に公正、@guillaume。ありがとう!しかし、私がアプリケーション:didReceiveRemoteNotification:fetchCompletionHandler:を実装しても、私はまだEventsViewControllerを開く予定の完了ハンドラブロックを実装しなければならず、私の元の質問はまだ残っています。 –