NSDocument を使用して、ドキュメントのカスタム クラスを iCloud に保存する Mac アプリを作成しています。
プログラムにコード署名し、サンドボックス化し、iCloud 資格を追加するだけで、非常に簡単にドキュメントを iCloud に保存することができました。ただし、iCloudの競合をトリガーし、プログラムがシートをドロップダウンしてユーザーが競合を解決できるようにするときに、シートの行にドキュメントの小さな画像が表示されないという問題がまだ発生しています(PreviewやTextEditのように) )。
さらに、画像があるべき領域 (空白) をクリックすると、プレビューのような実際のファイルのスナップショットとは対照的に、ドキュメント アイコンの画像と他の情報を表示するだけの [クイック ルック] ウィンドウが開きます。と TextEdit が行います。
Preview や TextEdit と同じ動作を実装するために何をする必要があるかを説明している Apple のドキュメントの情報は見つかりませんでした。
これまでのところ、自動保存とバージョン ブラウザだけでなく、クラウドへの保存のすべての機能を簡単に利用できることに驚いています。NSDocument は、Apple のドキュメントに記載されているように、開発者のためにこのすべてを行っているようです (iCloud の競合の解決など)。必要ありません。
答えは、クイック ルック サムネイル (シート内の表の小さな画像用) と、シート内のそれをクリックしたときのドキュメントの大きなプレビュー用のクイック ルック プレビューを実装することでどこかにあるのではないかと考えていますが、これは大変な作業のように思えます。また、NSDocument ルーチンをいわば食物連鎖に「トラップ」し始めると、NSDocument の他の組み込み関数の一部が失われるのではないかと心配しています。
他の誰かがこの問題に遭遇し、最も簡単な解決策を見つけましたか?
更新: 2012 年 12 月 25 日
問題は、QL サムネイル (コンフリクト シートのテーブルに表示される) と QL プレビュー (ユーザーがサムネイルをクリックしたときに表示される) の両方を表示する QuickLook ジェネレーターが必要であることです。
最終的に QL ジェネレーター プロジェクトを作成し、その後、メイン プロジェクトと QL ジェネレーター プロジェクトを追加するワークスペースを作成しました。その後、メイン プロジェクトに Copy Files Build Phase を追加して、QL ジェネレーターをメイン アプリケーション バンドルにコピーしました。