私は現在アプリに取り組んでおり、以前のバージョンが機能していないと思って頭を悩ませていました。ただし、ドキュメントウィンドウを閉じて、復元後に再度開くと、復元された値が表示されることがわかりました。
問題は復元の実行後に発生します。UIは復元が行われたことを単に反映していません。
なぜこれが可能であるか/問題を修正する方法を誰かが知っていますか?
ありがとう、クリント
私は現在アプリに取り組んでおり、以前のバージョンが機能していないと思って頭を悩ませていました。ただし、ドキュメントウィンドウを閉じて、復元後に再度開くと、復元された値が表示されることがわかりました。
問題は復元の実行後に発生します。UIは復元が行われたことを単に反映していません。
なぜこれが可能であるか/問題を修正する方法を誰かが知っていますか?
ありがとう、クリント
結局のところ、restoreFromCoder などとは何の関係もありませんでした。
ドキュメント オブジェクトが毎回スタンプされていた場所でした。これは、プロパティが設定されたときに実行される UI の更新時に UI を更新しないため、バインディングが無効になります。
私がこれを回避した方法は、ドキュメントからロードするたびに、新しいドキュメント オブジェクトの値を既存の値に単純に「同化」することでした (init でデフォルトに初期化されます)。これにより、ユーザーが復元したときに UI がシームレスに更新されます。