1

DVD のリストを表示する小さなアプリがあり、テーブル ビューからドリルダウンして詳細を取得できます。また、下部にタブ バーがあり、タブ ボタンとして DVD から Bluray に切り替えることができます。これはすべてうまくいきます。

タブ バー アプリについて読んでいると、5 つ以上のタブ バー ボタンを追加すると、「さらに」が表示され、Apple のミュージック アプリのようにボタンをドラッグ アンド ドロップできるというデモを見ました。また、各タブ バー ボタンが個別のナビゲーション コントローラーを制御していることにも気付きました。これは私にとって新しい手法でした。

アプリを作成したとき、単一のナビゲーション コントローラーがあり、ビューの上部がテーブル ビューで、ビューの下部がタブ バーであるビュー コントローラーを追加しました。次に、ボタンをボタン バーにドラッグすると、5 つ以上のボタンを追加できますが、「その他」は表示されません。

したがって、別のナビゲーション コントローラーの設計が必要であると考えています。

アプリを使用してタブビューコントローラーを埋め込むことができるかどうか、または自分が持っているものを適応できるかどうかについて混乱しています。

現在、すべてのタブは基本的に同じ (詳細ビューにドリルダウンするテーブル) であるため、タブが切り替えられたときに別のファイルからデータをリロードするだけです。素敵できれい。

タブ ビュー コントローラーの概念に切り替えると、5 つの詳細ビューにドリルダウンする 5 つのテーブル ビューを持つ 5 つのナビゲーション コントローラーを作成するのは無駄に思えます。さらに、7が必要な場合はどうなりますか? または9?(私は 5 つのビューのそれぞれに同じクラス名を付けることができることを理解 (または推測) しますが、それでも UI にはたくさんのストーリーボードがあります…)

これは、私のオプションが何であるかをよりよく理解するための設計上の質問です。

4

1 に答える 1

0

タブ バー コントローラーは、常にアプリケーションのルート コントローラーでなければなりません。(分割ビューでない限り、分割の異なる側がタブ バー コントローラーになる可能性がありますが、それでもルートである必要があります。)

したがって、アプリの正しい設計は次のとおりです。タブ バー コントローラーをルートとして、各タブにナビゲーション コントローラーを含め、各ナビゲーション コントローラーに最初のビュー コントローラーとしてテーブル ビュー コントローラーを含めます。無駄に思えるかもしれませんが、考えてみると、各タブには独自のコントローラーのスタックが必要なので、他に合理的な方法はありません。タブ 1 のユーザーがナビゲーション スタックで深さ 2 で、タブ 2 が深さ 7 の場合、タブを切り替えて場所を失いたくないでしょう。

于 2012-11-13T23:33:59.723 に答える