Interface Builderを使わずにアプリ作成

MACのアプリ制作に慣れている方は問題ないのかもしれませんが、Windowsに慣れてしまっていると、Interface Builder(IB)は敷居が高いです。
iPhoneでは複雑なUIを作ることはないのでIBを使わずにプログラミングしていきます。

プロジェクトの作成

「Window-Based Application」テンプレートを使用しプロジェクトを作成します。

プロジェクトの設定

  1. xib ファイルができているので、xib ファイルを削除。
  2. アプリ名-Info.plistの「Main nib file base name」項目を削除。
  3. C++を使うために拡張子をmからmmに変更。(main.m、Classes/アプリ名AppDelegate.m)

ソースコードの書き換え

xibを消したことによりデリゲータが無くなってしまったので、
UIApplicationMain関数にデリゲータを指定します。

main.mm

// 編集前
int main(int argc, char *argv[]) {
 
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, nil);
    [pool release];
    return retVal;
}
 
// 編集後
int main(int argc, char *argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, @"アプリ名AppDelegate");
    [pool release];
    return retVal;
}

アプリ名AppDelegate.hから不要なコードを削除。

// 編集前
@interface EmojiGetAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
}
 
@property (nonatomic, retain) IBOutlet UIWindow *window;
 
@end
 
// 編集後
@interface EmojiGetAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
}
@end

EmojiGetAppDelegate.mmから不要なコードを削除。

// 編集前
#import "アプリ名AppDelegate.h"
 
@implementation アプリ名AppDelegate
 
@synthesize window;
// 編集後
#import "アプリ名AppDelegate.h"
 
@implementation アプリ名AppDelegate
iphone/ibを使わずにアプリ作成.txt · 最終更新: 2018/03/18 09:56 (外部編集)
 
特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Share Alike 4.0 International
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki