#author("2017-07-31T16:19:18+09:00","default:wikiwriter","wikiwriter") #author("2017-07-31T16:45:37+09:00","default:wikiwriter","wikiwriter") &tag(Cocoa/Storyboardなしで開発); *目次 [#k84ff9a1] #contents *関連ページ [#nfb2ea0f] *参考情報 [#n6ab1e14] -[[viva Cocoa / Objective-C 入門:http://vivacocoa.jp/objective-c3e/chapter5b.html]]…Files's OwnerやらFirst Responderやらの説明。 -[[xcode8 - Xcode 8.3 macOS Project without storyboard - Stack Overflow:https://stackoverflow.com/questions/43975894/xcode-8-3-macos-project-without-storyboard]] *Xcode 8.2のStoryboardなしプロジェクトの構造 [#va60eb4f] -Xcode 8.2まではStoryboardなしのプロジェクトを開発することができた。しかしXcode 8.3からは不可能。 -プロジェクトには以下のファイルが含まれる。 --AppDelegate.swift --MainMenu.xib --info.plist -MainMenu.xibの内部 --Placeholders ---File's Owner: delegateがDelegateオブジェクトに接続。 ---First Responder ---Application --Objects ---Delegate ---Font Manager ---Main Menu --Window *Xcode 8.3で始めたStoryboardプロジェクトをStoryboardなしに変換 [#ee09893f] [[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"キーを追加する。どのエントリーでもいいのでプラスアイコンをクリックし、リストボックスから選ぶ。名前を"MainMenu"とする。 -7.プロジェクトを実行。 -7.プロジェクトを実行。必要な場合MainMenu.xibにウィンドウなどさらなるパーツを追加していく(そのままだとメニューしか表示されない)。 AppDelegateの動作をカスタマイズしたい場合、MainMenu.xibにObjectを追加し、そのクラスをAppDelegateに変更する。そしてReferencing Outletをオブジェクトに追加し、File Owner Delegate outletに接続する。 結局Xcode 8.2+xibのプロジェクト構造と同じに設定していることがわかる。