2012-04-10 29 views

回答

51

在這裏,我們走了。

這會將UIImage存儲到iOS應用程序的文檔目錄中。 您將不需要0​​。

NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString * basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil; 

UIImage * imageToSave = [UIImage imageNamed:@"Icon.png"]; 
NSData * binaryImageData = UIImagePNGRepresentation(imageToSave); 

[binaryImageData writeToFile:[basePath stringByAppendingPathComponent:@"myfile.png"] atomically:YES]; 

編輯: 如果存儲圖像形成的iOS相機,你可能看你如何將圖像旋轉到正確的方向。 Look here in that case

+0

謝謝,但是當我加載圖像時,它顯示錯誤的方向。 – user1234096 2012-04-10 18:37:06

+0

@JonasSchnelli ...這就是爲什麼我建議NSCoding。 – 2012-04-10 18:42:10

+1

@Matisse VerDuyn:好的。一加。但用「手」來轉動並不難。 :) – 2012-04-10 18:46:28

1

將其保存爲一個文件,你要麼需要把它放在一個plist中,或者創建圖像的PNG/JPG表示。使用NSCoding可以使UIImage數據更容易保存。

請參見本教程的詳細信息:http://www.raywenderlich.com/1914/how-to-save-your-app-data-with-nscoding-and-nsfilemanager

+1

嗯...爲什麼要使用NSCoding?好吧:也許當你試圖存儲UIImages的複雜對象結構。編碼過程還會消耗CPU時鐘。 – 2012-04-10 18:30:44