2011-07-29 9 views
1

私は、5つのバー項目を持つタブバーコントローラを持つアプリケーションを開発しようとしています。 すべての項目にナビゲーションコントローラが必要です。 すべてのアイテムに同じナビゲーションコントローラを再利用できるかどうかを知りたかっただけです。 これを行う際に留意する必要がある制限事項がありますか?ナビゲーションコントローラをいつ再利用するのですか?

答えて

2

することができます独自のUINavigationControllerが必要です。 UIViewControllerをスタックにプッシュ/ポップし、すべてのUINavigationControllerには独自のスタックがあります。他のタブのUIViewControllerは現在のタブからのナビゲーションフローとは何の関係もないので、各タブには独自のUINavigationControllerが必要です。

+0

両方の答えが良いです。だから両方に+ 1が、これはもう少し明確です。 –

1

私はあなたの質問を元々ここに誤解しているかもしれないと思います...ナビゲーションコントローラは実際に再利用しています...私はリリースを推奨し、タブが変更されたら新しいものを作成します。アプリケーション。 appDelegateで参照を渡すと、各View Controllerから簡単にアクセスできます。

オリジナル返事は、私はまだそれを誤解していた場合には、以下:S

分離は完全にあなた次第ですが、コードをわかりやすくするために、それはそれぞれのViewController別々に持ってうれしいです。あなたのコントローラにはたくさんのコードが含まれているので、できるだけ多くのコードを分けるのが良いです。持つべきであるあなたはUITabBarController内のすべてのタブを同じコントローラを使用しますが、各項目をクリックしたときに、それはビューのプロパティですが、それは本当に多く保存していないと難しいが、コードを維持するために作るウィル変更...

+0

@cedric:私は間違っていると私には正解があるので、私はこの初心者です:私は、IBを使って5つのnavコントローラを置くと、アプリケーションの初期化に時間がかかると思っていました。コードが複雑になっても作成してください。だから、最終的に、それはメモリとスピードとの間に何の違いもありませんか? – Prathiba

+0

UINavigationControllerは実際にはそれほど多くのメモリを割り当てません。もし私が望むのであれば、UIViewControllerを1つだけ使用してアプリケーション全体を作成できます。しかし、それはプログラミングの原則に反するもので、私がプログラムするのが難しくなるだけです。私はそれから実際には得られません。 –

関連する問題