2010年8月5日木曜日

Day 2 Utility Applicationテンプレートのソースコード解析

新規プロジェクトを作成して、そのままビルドと実行を行うと、「i」ボタンが用意されている。押すとくるっと画面が回り「Done」ボタンと、ナビゲーションバーが表示される。「Done」ボタンを押すと元の画面に戻る。
IBを起動してみる。どうやら「i」ボタンはButtonアクションの設定を行っている訳ではないらしい。くるっとする動きは、showInfoで実装しているっぽい。
@protocolやら、objective-cを理解していないとむずかしい。。。

以下、理解したことのメモ。
------------------------------------
MainViewController.m
MainViewController.m→@protocol FlipsideViewControllerDelegateの実装
23-26
flipsideViewControllerDidFinishメソッド
25
dismissModalViewControllerAnimatedメソッドを実行する。
そのView Controllerと、その上にあるすべてのView Controllerが閉じられる。通常これは、その下にあるNavigation Controllerに戻るために行う。

29-38
showInfoメソッド
MainView.xibで、Viewウィンドウの右下にある「i」ボタンに紐づいている処理。
32
controller.delegate = self;
「i」ボタンが押されると、delegate(移譲先)先としてself指定する。

34
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
コントローラのアニメーションの種類を、水平方向にパネルが回転するようなアニメーションで指定する。

35
[self presentModalViewController:controller animated:YES];
指定したcontrollerを一番上に表示する。
------------------------------------
FlipsideViewController.h

23-25
@protocol FlipsideViewControllerDelegate;
protocolの宣言
- (void)flipsideViewControllerDidFinish:(FlipsideViewController *)controller;の定義を行う。実装は、MainViewController.m23-26

0 件のコメント:

コメントを投稿