バインディングをいじり始めたところです。いくつかの NSColorWell を共有デフォルト コントローラーにバインドする設定ダイアログの実装を開始しました。それは完璧に機能しています。私の値は正しくエンコードされ、保存されます。
ただし、機能していないのは、ダイアログをキャンセルすることです。キャンセルしても、値は保存されます。
キャンセル ボタンを NSUserDefaultController の「元に戻す」にバインドする必要があるようですが、もちろんそうすると、「performClose」にバインドできません (ボタンを複数のアクションにバインドする方法がない限り)。認識していません)。
変更を元に戻し、ウィンドウを閉じるには、キャンセル ボタンをバインドする必要があります。明らかに、両方を実行するアクション メソッドを作成することでそれを行うことができますが、IB だけで可能であるように思われます。