【開発環境】Xcode4、iOS4.3
UITabBarControllerの他に画面を切り替えるコントローラとして、UINavigationController(ナビゲーションコントローラ)があります。タブバーコントローラは、画面を並列的に切り替えるのに対して、ナビゲーションコントローラは画面を階層的に切り替えることができます。要するに、ユーザーの操作に応じて、新しく画面を開くことができ、また直前の画面に戻ることができます。
よく一覧表示の画面に使われています。画面上部にナビゲーションバーが表示され、直前の画面に戻るボタンと現在の画面タイトルが表示されます。
ナビゲーションコントローラとタブバーコントローラは組み合わせて使うこともできます。ただ、タブバーコントローラの中にナビゲーションコントローラに使います。こんな感じになります。画面上部にナビゲーションバー、画面下部にタブバーコントローラが表示されています。
それでは、ナビゲーションコントローラを利用する手順について説明します。ここでは、前回までに作成したタブバーコントローラに追加する例を挙げます。
1.[MainWindow.xib]を開きます。左下の[→]のボタンをクリックして、画面に配置したオブジェクト一覧を表示させます。
2.↓のように画面内のオブジェクト一覧が表示されます。例えば、[Tab Bar Controller]の中に[UIViewController]が複数入っていることが分かります。
3.前回までは、[UIViewController]をタブバーところにドラッグして追加しましたが、今回は画面内のオブジェクト一覧から追加します。オブジェクトライブラリから[Navigation Controller]をドラッグします。
4.追加したナビゲーションコントローラを選択すると、画面内にナビゲーションバーが表示されていることが分かります。あと、左側の画面内のオブジェクト一覧を展開すると、[View Controller]を比べて、[Navigation Bar]と[View Controller]の2つが多いことが分かります。ここの[View Controller]を変更することで、最初に表示するビューコントローラを設定できます。
①画面内のオブジェクト一覧から[View Controller]を選択します。
②アイデンティティインスペクターを開きます。
③[Class]でカスタムコントローラのクラスを選択します。
(ここでは”CourseListViewController”を選択します)
6.ついでにタブバーコントローラのアイコンも変えます。
①画面内のオブジェクト一覧から[Tab Bar Item]を選択します。
②アトリビュートインスペクターを開きます。
③[Title](ラベル)と[Image](画像)を変更します。
6.ここまででシミュレータを起動してみる。
次回、ナビゲーションコントローラで新しい画面を開く
0 件のコメント:
コメントを投稿