0

私は新進気鋭の iPhone 開発者であり、最善を尽くしていますが、UINavigationController に関して質問があります。

3 つのタブを持つタブ バー アプリがあります。

  • 最初のタブには 5 つの UIButton があり、それぞれがアプリの異なる「セクション」をロードし、各セクションにはいくつかのビューがあります。

  • 他のタブには、情報が表示されるだけです。

  • ユーザーが最初のタブで UIButton のいずれかを選択すると、[self.view addSubview: xxxxx]; を使用しています。

ユーザーがこのビューから移動すると、[self.view removeFromSuperview]; を使用します。

私の質問は:

これは悪い方法ですか?ナビゲーションコントローラーを使用する必要がありますか? 私が使用していない理由は、カスタムの外観の UI が必要であり、ナビゲーション コントローラーがデザインを少し強制することを理解しているためです。

その上で、コア データを使用して永続ストレージを実装します。このアプリケーションを実装する方法は、コア データに問題を引き起こしますか?

これに関するヘルプは大歓迎です。

乾杯

トム

4

2 に答える 2

2

まず、ナビゲーションコントローラーが必要ない場合は、使用しないでください。あなたはそれについて悪く感じるべきではありません。そうは言っても、UINavigationControllerは特定のUIをまったく課していないと思います。ナビゲーションバーを非表示にして、好きなUIを実装するのは非常に簡単です。UINavigationControllerが課すのは、モジュラー設計です。各ビューは個別のView Controllerによって管理され、全画面を表示します。このデザインがアプリに適しているかどうかを答えられるのはあなただけです。もしそうなら、そしてあなたのアプリがビューの階層を中心に設計されているなら、ナビゲーションコントローラーはおそらく良い選択です。

于 2009-11-16T12:33:35.380 に答える
1

あなたが言ったように: 5 つのボタンの 1 つがタップされると、ユーザーは別のビューに移動し、5 つのボタンが消えます。これは、ナビゲーション コントローラーが設計された目的であり、単にビューを追加および削除するよりもメモリをより適切に管理するのに役立ちます (追加または削除されるビューの数によっては、パフォーマンスが向上する場合もあります)。Ole が指摘するように、NavigationController は高度にカスタマイズ可能であり、多くを課すことはありません。

バージョン 2.0 でボタンの 1 つがタップされた後、別の階層レベルを追加したいとします。次に、MainView にビューを追加し続けると、MainView が成長することがわかります。UINavigationController は、コードを適切に構造化し、後でナビゲーションを拡張できるようにします。

CoreData は非常に柔軟で、UI に依存しません。これについて心配する必要はありません。

于 2009-11-16T13:41:47.770 に答える