#author("2017-07-28T15:52:48+09:00","default:wikiwriter","wikiwriter") #author("2017-07-28T15:53:57+09:00","default:wikiwriter","wikiwriter") &tag(Xcode/Storyboardなしで開発); *目次 [#ne768ef6] #contents *関連ページ [#l1ba02d6] *参考情報 [#qaa66526] -[[Xcode6.1でSwiftとObjective-CごとにStoryboardを使わないで“Hello World!”をラベル出力するの方法 - 役立ちぬ開発史、それはただのブログ:http://scrtree.github.io/blog/2015/01/12/xcode6-dot-1-1-create-project-without-storyboard/]] *SwiftでMac用アプリの場合 [#hf0810a5] **Xcode 8.3でMac用のアプリを作成する [#n8495d47] -場合、Xibオンリーアプリを作成する機能はなくなった。 --[[xcode8 - Xcode 8.3 macOS Project without storyboard - Stack Overflow:https://stackoverflow.com/questions/43975894/xcode-8-3-macos-project-without-storyboard]] ---1.Cocoaアプリケーションテンプレートを使用してmac os x アプリを作成する(ストーリーボードベース)。 ---2.ストーリーボードのxibファイルとViewControllerファイルをプロジェクトから削除。 ---3.プロジェクトのinfoエリアで(プロジェクトをクリックしてinfoタブを表示)、NSMainStoryBoardのエントリーを削除する。 ---4.プロジェクトにMainMenuファイルタイプのファイルを追加する。 ---5.MainMenu.xibという名前で追加。 ---6.プロジェクトのinfoエリアに戻り、"Main NIB file base name"キーを追加する。どのエントリーでもいいのでプラスアイコンをクリックし、リストボックスから選ぶ。 ---6.プロジェクトのinfoエリアに戻り、"Main NIB file base name"キーを追加する。どのエントリーでもいいのでプラスアイコンをクリックし、リストボックスから選ぶ。名前を"MainMenu"とする。 ---7.プロジェクトを実行。 ---AppDelegateの動作をカスタマイズしたい場合、MainMenu.xibにObjectをを追加し、そのクラスをAppDelegateに変更する。そしてReferencing OUtletをオブジェクトに追加し、File Owner Delegate outletに接続する。 **Xcode 8.2でストーリーボードなしではじめた場合の構造。 [#lb6fbfdb] -プロジェクトにはMainMenu.xibが存在。 -MainMenu.xibには、Main MenuとWindowが存在。WindowsはAppDelegateのwindowとアウトレット接続されている。 -プロジェクトのInfoタブのMain nib file base nameは「MainMenu」となっている。 *Objective-Cの場合 [#od02fc64] -Single VIew Applicationで開始。 -Deploy InfoのMain Interfaceの中の"Main"を削除。 -Main.storyboardとLaunchScreen.xibを削除。 -AppDelegate.mを編集 #pre{{ - (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; self.window.backgroundColor = [UIColor whiteColor]; UIViewController viewController = [[UIViewController alloc] init]; self.window.rootViewController = viewController; [self.window makeKeyAndVisible]; return YES; } }} -ViewController.mの背景色を変更しておくとわかりやすい。 #pre{{ - (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor blueColor]; } }} -xibつきのUIViewControllerを追加したい場合、新規にCocoa Touchクラスのサブクラスとして新しいUIViewControllerのサブクラスを追加し、もともとのView Controllerを削除すればいい。