検索
カテゴリツリー
トップ
  未整理
  iPhoneアプリ開発
      未整理
      画像処理
リンク

CD&DVD Press
プレスやってます!


TECHLOG
ナビゲーションコントローラベースの、アプリ作成
ナビゲーションコントローラをベースに画面遷移を行うアプリを作成する場合の、初期手順です。


1.新規プロジェクトで「Window-based Application」を選択。



2.AppDelegateに、Navigation用のインタフェースを作成する。

xxxxAppDelegate.h に以下の修正を加える。

@interface xxxxAppDelegate : NSObject {
	IBOutlet UIWindow* window;
	IBOutlet UINavigationController* navigation; // 追加
}
@property (nonatomic, retain) IBOutlet UIWindow* window;
@property (nonatomic, retain) IBOutlet UINavigationController* navigation; // 追加


xxxxAppDelegate.m に以下の修正を加える。

・ソースの先頭に、synthesize を追加
@synthesize widnow;
@synthesize navigation; // 追加


・Navigationのviewをwindowに追加
-(void) applicationDidFinishLaunching:(UIApplication*)application {
	[window addSubview:navigation.view]; // 追加
	[window makeKeyAndVisible];
}


・解放処理部分
-(void)dealloc {
	[navigation release]; // 追加
	[window release];
	[super dealloc];
}



3.Navigationに、最初に表示されるviewを作成する。

プロジェクトツリーの「Classes」を右クリック →「追加」→ 「新規ファイル」→「UIViewController subclass」を選択。
名前は何でもいいので、とりあえず「RootScene」として作成すると、「RootScene.h」、「RoutScene.m」、「RoutScene.xib」の3ファイルが作られる。



RoutScene.m に以下の関数を追加しておく。
-(id) init {
	return( self );
}


4.InterfaceBuilderでの修正。

MainWindow.xib をダブルクリックしてInterfaceBuilderを起動する。

Libraryウィンドウから「Navigation Controller」を、
Windowと同じ階層にドラッグドロップで追加する。
(Libraryウィンドウが表示されていない場合は、メインメニューの「Tools」→「Library」で表示できる)



「Navigation Controller」をクリックして選択する。
インスペクタ上で、次の作業を行う。
(インスペクタが表示されていない場合は、メインメニューの「Tools」→「Inspector」で表示できる)

① 「Outlets」の右端にある○ボタンを、一覧画面の「xxxxAppDelegate」の上にドラッグ&ドロップする。
② 「Referencing Outlets」の、「New Referencing Outlet」の右端にある○ボタンを、一覧画面の「xxxxAppDelegate」の上にドラッグ&ドロップして「navigation」を選択する。



後のプログラムはxcodeで書くため、InterfaceBuilderでの操作はこの1回きりとなる。


ここまでで、ナビゲーションコントローラは動作するようになる。
ビルドして実行すると、何もない画面が表示されるはず。
posted by admin at 2010年10月27日