私はこの問題を完全に困惑しています。UINavigationController(ストーリーボード)からUIViewControllerにプログラムで分割する方法
私は、View Controllerが主にストーリーボード上に作成されているアプリを持っています。しかし、 コードで完全に(プログラムによって)作られているものがいくつかあります。
私のアプリケーションのエントリポイントは、独自のUIViewControllerを持つ多くの異なるナビゲーションコントローラにフィードを張るTabBarControllerです。ここで
私は何の問題タブバーのアイテムを使用して(ストーリーボードに表示されている)適切なビューコントローラのいずれかに移動していません。 しかし、UIViewControllerがコード全体を使って構築されているため、ストーリーボード上に直接セグを持たないタブバーアイテムを選択すると、適切なクラスにセグメンテーションできません。
ViewDidLoad()関数を持つNavigationControllerに* .swiftクラスを追加しました。この関数は、適切なタブバー項目を選択すると決して呼び出されません。 奇妙な部分は、(ストーリーボードに表示された)UIViewControllerに接続され、* .swiftファイルが添付されている単一のナビゲーションコントローラがあることです。適切なTab Bar Itemが選択されると、そのViewDidLoad()が呼び出されます。 複数の* .swiftファイル(すべてUINavigationControllerを継承しています)を添付しようとしましたが、適切なViewDidLoad()関数を呼び出すための単一のものを取得できません。
編集:画像のように、左下のナビゲーションコントローラには、そこから延びるセグがありません。しかし、それに接続されているクラスがあり、あなたが見ることができるようにセグエが行わ
class WeaponsNavController: UINavigationController
{
override func viewDidLoad()
{
self.navigationController?.pushViewController(WeaponsTableVC(), animated: true)
}
}
を取るところそののviewDidLoad()関数があるの内側に、私は、ビューコントローラであるWeaponsTableVC()に接続しようとしています完全にコードによって作成されます。しかし、このクラスは、ストーリーボードのナビゲーションコントローラに直接接続されているにもかかわらず、まったく呼び出されないようです。
プログラム可能なビューコントローラをタブバーコントローラに追加するコードを表示できますか?また、どのナビゲーションコントローラーを2番目のパラグラフの始めに参照していますか?プログラムで作成されたもの、またはルートビューコントローラなしのストーリーボードのもの? – Mark