12

ドキュメントベースのアプリケーションドキュメントパッケージを表すNSFilePresenterプロトコルに準拠するオブジェクトがあります。パッケージ内に新しいファイルが作成されると、プログラムで適切なNSFileCoordinationメソッドを使用してNSFileManagerを使用するか、Finderを介して-presentedSubitemDidChangeAtURL:、イベントのみを取得しましたが、この場合はそれほど明白ではありません-presentedSubitemDidAppearAtURL:

これは予期された動作ですか、それとも私は何か間違ったことをしていますか?

-presentedSubitemDidAppearAtURL:NSFilePresenterのコメントは、それを明確に述べています。

ディレクトリに含まれるファイルまたはディレクトリが追加されたことを通知します。このメソッドが実装されていないが実装されて-presentedItemDidChangeおり、ディレクトリが実際にファイルパッケージである場合、-presentedItemDidChange代わりにファイル調整機構が呼び出されます。

4

2 に答える 2

8

この正確な問題にかなり長い間苦労した後、私はAppleとのテクニカルサポートの問題を開きました。彼らの反応は、これはバグであり、私たちが今できる唯一のことは、を介してすべてを行うこと-presentedSubitemDidChangeAtURL:です。

この問題が発生した場合は、バグを報告して(https://bugreport.apple.com)、Appleにこの問題をできるだけ早く修正するように勧めます。

于 2013-10-13T09:42:16.880 に答える
-2

https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSFilePresenter_protocol/

プレゼンターオブジェクトは、ファイルへの低レベルの読み取りおよび書き込み呼び出しを使用して直接行われた変更について通知されません。ファイルコーディネーターを通過する変更のみが通知になります。

于 2015-10-14T22:30:44.223 に答える