2012-09-26 31 views
-1

這可能是一個很難的事情,但我 必須保存在什麼某一時刻出現在屏幕上,一個文件。 但不只是一個文件,我需要將其保存到我的資產文件夾: 我的目標是,我可以在以後使用的圖像,而不:將屏幕圖像保存到我的資產?

dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
docsDir = [dirPaths objectAtIndex:0]; 

只是使用它就像是我的資產,只需使用:@"myImage.png",當myImage是我已經從我的打印屏幕保存的圖像。

如何做到這一點的任何方向? 謝謝。

回答

1

AFAIK,你不能把它保存到應用程序包。 我建議你編寫自己的方法來加載像[UIImage imageNamedCustom:...]的圖像。 如果此方法將首先在資產中搜索圖像,如果未找到,則嘗試從文檔或緩存中加載,這將會很好。此外,它可能會緩存保存圖像的路徑。之後,您可以將「[UIImage imageNamed:」的所有出現替換爲「[UIImage imageNamedCustom:」和其他類似的方法。

1

你的應用程序的主束是應用程序的一部分,並且是隻讀的。您無法在設備上添加或刪除內容。您將不得不將該圖像保存到應用沙箱中的其中一個目錄中,如DocumentsLibrary/Caches

相反的+[UIImage imagedNamed:],也許+[UIImage imageWithContentsOfFile:]會爲你工作?

+0

謝謝。我知道如何從屏幕上獲取UIImage,但我想以某種方式保存它,以便我可以在@ myImage.png的代碼中將它用作字符串。這是因爲我已經有代碼正在尋找我的資產中的圖像,我現在不想改變它.. – user1280535

1

你所說的,如果我理解正確的話,就是你要保存的圖像在屏幕上繪圖的一部分(這是很容易),並希望以後從您的應用程序包檢索(我想你的意思是而不是資產)。這不能完成,因爲應用程序包在運行時是隻讀的。

相關問題