#author("2017-07-31T11:33:04+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.プロジェクトを実行。必要な場合MainMenu.xibにウィンドウなどさらなるパーツを追加していく(そのままだとメニューしか表示されない)。

AppDelegateの動作をカスタマイズしたい場合、MainMenu.xibにObjectを追加し、そのクラスをAppDelegateに変更する。そしてReferencing Outletをオブジェクトに追加し、File Owner Delegate outletに接続する。


結局Xcode 8.2+xibのプロジェクト構造と同じに設定していることがわかる。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS