これは簡単なはずですが、何かが足りないに違いありません。ドキュメントベースのアプリケーションがあります。また、NSTableViewと、以前のファイルのリストを表示する3つのボタンを備えた新しいXIBを作成しました。アプリケーションが最初に起動したときに、ドキュメントウィンドウの代わりにこのXIBが表示されるようにしたいと思います。ユーザーが古いファイルを選択するか、[新規]ボタンを押したら、ドキュメントウィンドウに移動します。これは非常に一般的であり、私はかなり頻繁に使用されるのを見てきました。
これを機能させるために、project-info.plistファイルを変更し、メインNIBファイルのベース名をMyDocumentからSelectionXIB名に変更しました。これにより、アプリケーションはMyDocumentウィンドウではなくSelectionウィンドウを表示します。これまでは問題ないようです。
選択ウィンドウで、このXIB専用にテーブルビューと配列コントローラーおよびカスタムウィンドウコントローラーを設定しました。ファイルの所有者を新しいウィンドウコントローラーに設定し、ウィンドウコントローラーのウィンドウプロパティをウィンドウにバインドし、ウィンドウのデリゲートプロパティをファイルの所有者にバインドし、[選択]、[キャンセル]、[新規]ボタンを追加しました。NSApplicationには何もバインドされていません。しかし、奇妙なことに、このアプリケーションを実行すると、これらのコントローラーをNSApplicationに接続したいようです(他の2つのボタンについても同じです)。
アクションselectButton:をクラスNSApplicationのターゲットに接続できませんでした
また、NSApplicationが私の配列への参照を保持するアウトレットのKey-Valueに準拠していないというエラーも表示されます。アレイコントローラ、ウィンドウ、およびボタンは、NSApplicationではなく、新しいウィンドウコントローラにバインドされています。問題が発生した場合は、NSApplicationではなく、コントローラーがバインドされているウィンドウコントローラーについて言及することになると思いました。
ここで何が起こっているのか誰か知っていますか?「メインNIBファイルベース名」を「メインメニュー」から「選択」に変更したため、これはターゲットアクションの問題ですか?これを変更することになっていない場合、ドキュメントウィンドウを表示する前にCocoaで選択画面を表示できるようにするにはどうすればよいですか?
どんな助けでも大歓迎です。ロブ