どこが違うのか気になったのでメモ。
Window-bas
※ Xcode 4.1で動作確認しています。
Window-bas ed Applicatio nを作成
RootViewCo ntrollerを作成
File - New - New FileでUIViewCont
Interface Builderで作業
MainWindow
View - Utilities - Show Object Library を開いて、
- View Controller
をDrag & Drop
View - Utilities - Show Identity Inspector を開いて、
- 先にDropしたView Controller
を選択 - Custom ClassのClassをRootViewCo
ntrollerに - (LabelをRoot View Controller
に)
View - Utilities - Show Attributes
- View Controller
のNIB NameをRootViewCo ntrollerに
View - Assistant Editor - Show Assistant Editor を開いて、
- AppDelegat
eクラス(h)を開く - IB上でoptionキーを押しながらRoot View Controller
を選択、(hファイル上まで)DragしてInsert Outlet Connection を追加(Name:viewContro ller)
下記のようにコード生成されます:
1 @interface RootViewControllerPr otoAppDele gate : NSObject <UIApplicat ionDelegat e> { 2 RootViewCo ntroller *_viewContr oller; 3 } 4 5 6 @property (nonatomic, retain) IBOutlet UIWindow *window; 7 @property (nonatomic, retain) IBOutlet RootViewCo ntroller *viewContro ller;
エディタでの作業
AppDelegat
1 @class RootViewController;
AppDelegat
1 #import "RootViewController.h " 2 3 - (BOOL)applicatio n:(UIApplicat ion *)applicatio n didFinishL aunchingWi thOptions: (NSDictiona ry *)launchOpti ons 4 { 5 // Override point for customizat ion after applicatio n launch. 6 self.window.rootViewCo ntroller = self.viewContro ller; 7 [self.window makeKeyAnd Visible]; 8 return YES; 9 }
厳密に言うと、View-based
作業をしてみてIB経由でクラスにViewContro
posted by
satoko
on Tue 6 Sep 2011
at 15:32