私は、5つのバー項目を持つタブバーコントローラを持つアプリケーションを開発しようとしています。 すべての項目にナビゲーションコントローラが必要です。 すべてのアイテムに同じナビゲーションコントローラを再利用できるかどうかを知りたかっただけです。 これを行う際に留意する必要がある制限事項がありますか?ナビゲーションコントローラをいつ再利用するのですか?
答えて
することができます独自のUINavigationControllerが必要です。 UIViewControllerをスタックにプッシュ/ポップし、すべてのUINavigationControllerには独自のスタックがあります。他のタブのUIViewControllerは現在のタブからのナビゲーションフローとは何の関係もないので、各タブには独自のUINavigationControllerが必要です。
私はあなたの質問を元々ここに誤解しているかもしれないと思います...ナビゲーションコントローラは実際に再利用しています...私はリリースを推奨し、タブが変更されたら新しいものを作成します。アプリケーション。 appDelegateで参照を渡すと、各View Controllerから簡単にアクセスできます。
オリジナル返事は、私はまだそれを誤解していた場合には、以下:S
分離は完全にあなた次第ですが、コードをわかりやすくするために、それはそれぞれのViewController別々に持ってうれしいです。あなたのコントローラにはたくさんのコードが含まれているので、できるだけ多くのコードを分けるのが良いです。持つべきであるあなたはUITabBarController内のすべてのタブを同じコントローラを使用しますが、各項目をクリックしたときに、それはビューのプロパティですが、それは本当に多く保存していないと難しいが、コードを維持するために作るウィル変更...
@cedric:私は間違っていると私には正解があるので、私はこの初心者です:私は、IBを使って5つのnavコントローラを置くと、アプリケーションの初期化に時間がかかると思っていました。コードが複雑になっても作成してください。だから、最終的に、それはメモリとスピードとの間に何の違いもありませんか? – Prathiba
UINavigationControllerは実際にはそれほど多くのメモリを割り当てません。もし私が望むのであれば、UIViewControllerを1つだけ使用してアプリケーション全体を作成できます。しかし、それはプログラミングの原則に反するもので、私がプログラムするのが難しくなるだけです。私はそれから実際には得られません。 –
- 1. IOS。ナビゲーションコントローラ。再利用ViewController
- 2. ナビゲーションコントローラがコントローラを再利用しないようにする方法
- 3. いくつかのアクティビティでAndroid AsnycTaskを再利用するためのパターン?
- 4. 1つのプロジェクト内でDjangoアプリケーションを再利用する
- 5. 複数のタブページでコントロール(つまりテキストボックス)を再利用する
- 6. オブジェクトを再利用する
- 7. IndexSearcherを再利用する
- 8. セルを再利用すると、UITableViewセルを再利用するとクラッシュする
- 9. いくつかのテキストボックスのツールチップの再利用
- 10. C#でxmlを再利用する
- 11. ルビーでカスタムゲッターを再利用する
- 12. Hibernateでクエリを再利用する
- 13. 1つのhtmlヘッドセクションを再利用するには?
- 14. ASP.NET MVCでAPIのViewModelsを再利用していますか?
- 15. 2つの異なるレイアウトでAndroid Listviewのビューを再利用
- 16. インテントを再利用するのは安全ですか?
- 17. Javascriptの機能を再利用する
- 18. Googleプラスボタンを再利用しますか?
- 19. VB6で変数を再利用するのは良い考えですか?
- 20. セルを320で再利用
- 21. Drupalでパネルテンプレートを再利用
- 22. Scalaでガードを再利用
- 23. 異なるビューに再利用できる1つのSpringコントローラ
- 24. AQGridViewでセルを再利用できないようにする
- 25. オプションメニューの再利用xml - それは良い練習ですか
- 26. MFMailComposeViewControllerを再利用
- 27. サブビューを再利用
- 28. FtpWebRequestを再利用
- 29. 再利用アクションメーラテンプレート
- 30. WPF - 再利用
両方の答えが良いです。だから両方に+ 1が、これはもう少し明確です。 –