Tasaki です。
前回のソースコードでさらっと流していましたが、
あのコードは Nib ファイルを使用しない場合の
アプリケーション初期化メソッドの実装例でした。
iPhone アプリを開発する場合、
Xcode のプロジェクトテンプレートを利用するのが簡単で便利なのですが、
Interface Builder の使用を前提とした構成になっていて、
“初心者には逆にとっつきにくい”と感じた方もおられるのではないでしょうか?
かくいう僕自身がそうでした。
ということで、今回は Interface Builder や Nib ファイルを
全く使わないようにするための手順をご紹介したいと思います。
まず、適当なプロジェクトを Xcode で開きます。
(ここでは仮に、MyProject としておきます。)
そしたら、プロジェクトウィンドウのグループとファイル一覧から
MainWindow.xib ファイルを削除します。

次に Info.plist の Main nib file base name の項目を削除します。

後は、ソースを数カ所書き換えるだけです。
まず、MyProjectAppDelegate.h にある
@property (nonatomic, retain) IBOutlet UIWindow window;
上記の項目から、IBOutlet の記述を削除します。
次に、MyProjectAppDelegate.m の
applicationDidFinishLaunching: メソッドの先頭に
window = [[ UIWindow alloc ] initWithFrame: [[ UIScreen mainScreen ] applicationFrame ];
を追加します。
最後に main.m の
int retVal = UIApplicationMain(argc, argv, nil, nil );
の2つ目の nil を @"MyProjectAppDelegate" に置き換えます。
これで、プロジェクトから Interface Builder の影が
きれいさっぱりなくなりました。
公式のサンプルコードでも、ウィンドウだけの Nib ファイルが
そのまま置いてあったりして何となく気持ち悪い感じなんですよね。
使わないなら省いておいてくれたらいいのにと思うんですけど。
- 関連記事
-
スポンサーサイト
trackbackURL:http://appteam.blog114.fc2.com/tb.php/5-97719c22