2009年8月21日金曜日

"Window-based Application" から組み立ててみる

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
一行メモの開発に入る。

新規プロジェクトを作成し "Window-based Applicatoin" を選択する。
名前を "OneLiner" とした。

この直後はデフォルトで用意されるアプリケーションデリゲートのクラスが1つできるだけ。
まずはビューを1つ追加してみよう。

新規ファイル作成を選び "UIViewController subclass"を選択する。
名前は "MainViewController" とする。
作成時のオプションで "With XIB for user interface" を入れておく。こうすると自動的にクラスの同名の XIBファイルを作り File's owner をそのクラスにしておいてくれる。

こんな感じ。



これらをつなげる作業に入ろう。
最終イメージはこう。



まずコードにプロパティとアウトレットを追加する。

OneLinerAppDelegate.h
@class MainViewController;
@interface OneLinerAppDelegate : NSObject {
UIWindow *window;
MainViewController* mainViewController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet MainViewController* mainViewController;

@end


mainViewController が新規に加わった部分。


続いて MainWindow.XIB を開きアウトレットを接続する。

(1) MainWindow.XIB に UIViewController を追加し、クラスを MainViewController に変える
(2) OneLinerAppDelegate のアウトレット mainViewerController に(1)を接続する

さらに MainViewController.XIB を開きとりあえず簡単なコントロールを配置しておく。


最後にプログラムで window と ビューを接続する。
OneLinerAppDelegate.m
- (void)applicationDidFinishLaunching:(UIApplication *)application {    

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



さて実行してみよう。
ビューが表示された。




- - - -
これら一連の操作は実は Xcodeで新規プロジェクトを作成する時に "View-based Application" を選ぶと自動的に行われるもの。今回手動でやってみることでそれぞれの関係を理解することができた。

0 件のコメント:

コメントを投稿