2017-03-09 9 views
1

私のアプリケーションのすべてのページにあるタブバーが必要です。私はアプリのメイン4セクション(タブ上のセクション)を4つのストーリーボードに分けました。私は今、プログラムでタブバーを作成したいし、クリックするたびに新しいストーリーボードをロードします。新しいストーリーボードを提示するタブバーをプログラム的に作成する方法は?

私は、このチュートリアルに似て行っている: http://swiftdeveloperblog.com/code-examples/create-uitabbarcontroller-programmatically/

をしかし、今、新たなストーリーボードをロードするだけではなく、コントローラを表示にそれを有効にする方法がわかりませんか?


これが私の主な質問ですが、これが価値があるかどうかも疑問です。私がこれをやる理由は、まだストーリーボードを使いたいのでストーリーボードを分割することですが、大規模なストーリーボードを引き継ぐことは望ましくありません。私はしかし、それを行うことができます。

メモリの賢明さは、バーのタブをクリックすると完全に新しいストーリーボードが読み込まれるたびに遅くなるのではないかもわかりません。あなたが最初のビューコントローラをインスタンスIDを経由して、それを作成したくない場合は

UIStoryboard(name: "TabOneStoryboard", bundle: nil) 
    .instantiateInitialViewController() as! TabOneViewController 

UIStoryboard(name: "TabOneStoryboard", bundle: nil) 
    .instantiateViewController(withIdentifier: "TabOneViewControllerID") as! TabOneViewController 

は忘れずに設定してください

+0

あなたのストーリーボードはどのくらいですか? –

+0

4つのセクション、それぞれ約3-4のViewControllers –

答えて

2

初期ビューコントローラをUIStoryboardを作成し、インスタンス化ストーリーボードのアトリビュートインスペクタの初期ビューコントローラ:Attribute inspector

これは非常に実用的なアプローチですストーリーボードのサイズを縮小します。ビューコントローラを構築した後は、UITabBarControllerでキャッシュする必要があります。あなたが何かが遅くなるのを見ない限り、ストーリーボードのローディングのパフォーマンスについて心配しないでください。アップルは、これらのことでクリーンアップとパフォーマンスについてはかなり良いです。

このポストアドレス、その問題ビット:Multiple storyboards: should I use a singleton pattern to cache them?

1
  1. があなたの現在のストーリーボードここにあなたのストーリーボードのリファレンスセットの詳細で今すぐ enter image description here

  2. enter image description here

  3. でストーリーボードの参照を作成します。このストーリーボードのリファレンスをタブバーに埋め込む

関連する問題