NSDocument
推奨/NSWindowController
セットアップのドキュメントベースのアプリがあります。すべてのウィンドウには、独自のNSWindowController
インスタンスと関連する XIB ファイルがあります。インターフェイスは : に非常に簡単にロードされ-(id)init
ますif (self = [super initWithWindowNibName:@"DocumentWindow"]) { // yadda yadda }
。XIB ファイルには、ユーザーが新しいウィンドウを開くたびにインスタンス化する必要がある別のコントローラーを表すオブジェクトが含まれています。現在のドキュメントにのみ関連するデータが表示されます。でオブジェクトをアンパックすると、-(id)initWithWindowNibName:
2 つの異なるウィンドウ コントローラーがあり、2 回呼び出したにもかかわらず、常に同じインスタンスへの参照が取得されます-(id)initWithWindowNibName:
。XIB ロード メカニズムは、同じアーカイブ オブジェクトを 1 回だけ展開するように見えますが、これは理にかなっています (本当に? )。
コードで個別のオブジェクトを割り当て、ビューを手動で読み込み、サイズを計算し、サブビューとして追加してから、バインディングを設定し、ウィンドウが閉じられたときに手動でバインドを解除することを監視する以外に方法はありませんか?
自分の愚かさのせいで、頭を壁にぶつけています。それは事態を悪化させるだけです。