2010年5月11日火曜日

アプリケーション起動完了イベント

アプリケーション起動後に最初に呼ばれるイベントは、Windowベースアプリケーションの場合は「プロジェクト名AppDelegate」クラスの「didFinishLaunchingWithOptions」メソッドです。
このメソッドの定義は「UIApplication.h」に以下のように定義されていました。


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);

ところで、この定義は同じファイルの「@protocol UIApplicationDelegate」という部分に宣言されている「プロトコル」に定義されていました。また、他にも起動が完了したら呼ばれそうなメソッドが宣言されていました。

ということは、プロトコルを引き込む宣言をしているところがあるのかと思って「プロジェクト名AppDelegate.h」を見てみたところ、以下のように宣言されていました。


@interface ・・・AppDelegate : NSObject <UIApplicationDelegate>{



「<UIApplicationDelegate>」がアプリケーションで使うプロトコル宣言の部分です。
xcodeが自動生成するコードなのでなんとなく見過ごしてましたが、こういうところで引き込んでいたのかと妙に納得したのでした。

ちなみに、独自クラスを実装した場合は、「awakeFromNib」というメソッドが呼ばれます。
このメソッドはNSObjectで宣言されています。

0 件のコメント:

コメントを投稿