我有一個符合NSFilePresenter協議的對象,它代表了我的基於文檔的應用程序文檔包。當在包內創建一個新文件時,無論是編程使用NSFileManager與NSFileCoordination方法或通過Finder我只有-presentedSubitemDidChangeAtURL:
事件,但在這種情況下看起來不那麼明顯-presentedSubitemDidAppearAtURL:
。NSFilePresenter -presentedSubitemDidAppearAtURL:方法永遠不會被調用
這是預期的行爲還是我做錯了什麼?
在NSFilePresenter狀態明確的上-presentedSubitemDidAppearAtURL:
評論:
被通知通過該目錄包含文件或目錄已被添加。如果此方法未實現但
-presentedItemDidChange
是,並且目錄實際上是文件包,則文件協調機器將調用-presentedItemDidChange
。
我想你沒有實現'-presentedItemDidChange'? – charles
[這裏](http://www.objc.io/issue-10/icloud-document-store.html)是一個與這個問題有關的好貼子,我的結論是;不要使用'NSFilePresenter'。 – Eonil
GCD似乎是要走的路。 [使用GCD處理文件系統事件](http://www.davidhamrick.com/2011/10/10/handling-filesystem-events-with-gcd.html) – Eonil