我想在雙擊文件時用我的應用程序打開一個文件。我已經註冊了應用程序的文件類型,如果我將一個文件放到應用程序圖標上,application: openFile:
方法可以正常工作。它在蘋果文檔中說,當用戶雙擊一個文件時,這個方法也應該工作。通過在objective-c中雙擊打開文件
我看到的是,當文件通過雙擊打開時,應用程序將激活,但Safari將打開文件(試圖打開.webloc文件)。但application: openFile:
不會被調用的方法:(
這是我如何設置它在Xcode:
編輯:
我已經設置了.webloc打開爲非標準我。應用程序還可以右鍵單擊「打開方式」>「我的應用」不工作
編輯2: 如果我重命名文件擴展名爲.mp3或任何其他我的應用程序提示將通過雙擊打開該文件!奇怪...
我認爲你的問題有點不對。或者我不明白你的答案:(在蘋果文檔中它說:「創建並返回一個包含文檔內容的數據對象,格式化爲指定的類型。」對於'dataOfType:error:'。我想要的是一種打開用戶雙擊的文件的方法 – Silicone 2012-04-16 19:08:56
沒有抱歉,Xcode項目的例子允許你創建一個新文檔,保存文檔,然後雙擊它打開它。需要修改的模板代碼以保存文件(在我的答案中的方法之後的方法也需要更改爲返回「YES」。)雙擊工作;也許它可以幫助您解決原始問題。示例代碼會創建一個新的文檔類型'mydoc',並且您打開一個現有的文檔類型'webloc' - 因此示例代碼可能無濟於事。 – GoZoner 2012-04-16 19:26:27
我在屬性列表編輯器中創建了「我自己的」.webloc文件,但剛剛打開的Chrome瀏覽器,似乎只有當我使用「。 webloc「擴展Safari將打開。如果我將擴展名更改爲「.mp3」或其他任何其他文件都將按預期工作,則會調用'application:openFile:':S – Silicone 2012-04-16 19:46:45