2017-04-06 2 views
-1

UINavigationControllerでset​View​Controllers関数を使用して最初のルートビューコントローラを設定していますが、viewControllers配列は呼び出された後で空です。UINavigationController.set View Controllerで空のviewControllers配列が発生する

viewControllersアレイのビューコントローラを設定した直後に動作することが予想されます。アニメーションがあっても問題が発生する可能性があります。

setViewControllers([viewControllerToPresent], animated: true)

注目に値する:それはアプリの起動時に起こっているが、私は確信した後、UINavigationControllerがロードされ、準備ができています。 navigationcontrollerがスタックに上のViewControllerをプッシュしようとしていたとして

+0

いくつかのコードを表示できますか? –

+0

助けを借りてくれてありがとう。このための簡潔なコードを表示するのは本当に難しいです。それが必要とするのは、奇妙なUIKitの動作を強く根本的に理解することです。 UIKitがこのように動作する理由についてもう分かっているなら、私の答えを見てください。乾杯! – bitwit

+0

"奇妙なUIKitの振る舞いの根本的な理解"を持っている人でも、あなたの心を読んで、完全には説明されていない問題を解決することはできません。たとえば、以下のソリューションではモーダルが問題になると言われていますが、モーダルプレゼンテーション(複数のビューコントローラを使用するだけでなく)もこの式の一部であったことに注意してください。いくつかのコード行は、私たちがあなたを助けようとしている人にとって、長い道のりになります。心に留めておくだけのもの。 – nickgraef

答えて

0

問題が1でモーダルのプレゼンテーションを遅らせることにより

(アニメーションの両方)を同時にモーダル(チュートリアルスライド)のViewControllerを提示しようとすることになりました第2に、両方のビューコントローラは、互いにぶつかることなく提示することができた。

説明するには、UIKitとAnimation APIを使い慣れていれば誰でも知っているだろう。私は誰からも聞いていない場合は自分の答えを受け入れますが、将来的にはより良い答えが得られれば喜んでこれを変更します。

関連する問題