Home > Object-C | iPhone | iPhone SDK 3 > iPhoneアプリ UINavigationControllerを使用した、ナビゲーションUIのメモ。その1

iPhoneアプリ UINavigationControllerを使用した、ナビゲーションUIのメモ。その1

「Macを買うなら…」でおなじみの、秋葉館オンラインショップ
もちろん話題のiPodも本体を含め関連商品充実!

UINavigationController

UiKitフレームワークに含まれている、UINavigationControllerを使用した、
ナビゲーションUIについての私的メモです。InterfaceBuilderなどでの設定の説明は省いてます。

UINavigationControllerクラス

NSObject
   |
   +–UIResponder
      |
      +–UIViewController
         |
         +–UINavigationController

1. UINavigationControllerクラスとは

オブジェクトの階層の外観を管理する、ナビゲーションバーのための特殊なコントローラ。アプリケーションに提供されたビューコントローラを使用して、ナビゲーションバーの設定やビューを描画することが可能。各ビューコントローラは、ナビゲーションバーのナビゲーションアイテムを持っています。

2. UINavigationCotrollerのナビゲーションでの働き

  • UINavigationControllerオブジェクトは複数のUIViewCotrollerオブジェクトを保持していて、そのオブジェクトの画面遷移を管理。
  • UINavigationControllerオブジェクトが保持しているUIViewオブジェクトと、ナビゲーションを合成したものを表示。
  • そのUIViewオブジェクトを、Windowオブジェクトの子ビューとすることで、ナビゲーションバーを含む画面が表示される。

実装サンプル

NavigationSampleAppDelegateクラスに、UINavigationControllerのメンバ変数と、プロパティ宣言を追記。

//NavigationSampleAppDelegate.h
@interface NavigationSampleAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    UINavigationController *navigationController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;

@end

NavigationSampleAppDelegate.mに、実装ディレクティブを追加。
UINavigationControllerのビューをウインドウに追加して、deallocメソッドにも追記。

//  NavigationSampleAppDelegate.m

#import "NavigationSampleAppDelegate.h"

@implementation NavigationSampleAppDelegate

@synthesize window;
@synthesize navigationController;

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

    // Override point for customization after application launch
	[window addSubview:[navigationController view]];
    [window makeKeyAndVisible];
}

- (void)dealloc {
    [navigationController release];
    [window release];
    [super dealloc];
}

これで、画面遷移を制御するコントローラーの下地の追加が完了しました。

InterfaceBuilderで、MainWindow.xibのUINavigationControllerを編集

InterfaceBuilder上で、NavigationControllerで制御したいコントローラーを、Libraryから選択して、xibを編集し、ビルドすると、下記の例ようになります。

NavigationBar

次回は、スタートページと、遷移先ページ、遷移イベントの実装などについて、メモして行きたいと思います!
IBNavigationController Library

【関連記事】

iPhoneアプリ開発の環境構築

iPhoneアプリ HelloWorld

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://splitchin.com/tech/2010/01/10/iphone%e3%82%a2%e3%83%97%e3%83%aa%e3%80%80uinavigationcontroller%e3%82%92%e4%bd%bf%e7%94%a8%e3%81%97%e3%81%9f%e3%80%81%e3%83%8a%e3%83%93%e3%82%b2%e3%83%bc%e3%82%b7%e3%83%a7%e3%83%b3ui%e3%81%ae/trackback/
Listed below are links to weblogs that reference
iPhoneアプリ UINavigationControllerを使用した、ナビゲーションUIのメモ。その1 from あらびき林檎。

Home > Object-C | iPhone | iPhone SDK 3 > iPhoneアプリ UINavigationControllerを使用した、ナビゲーションUIのメモ。その1

カテゴリー
RSS あらびき林檎
スポンサー
書籍

Return to page top