2012-04-10 12 views

cevap

51

gidiyoruz.

Bu, iOS Uygulamanızın belgeler dizinine UIImage depolanacak. NSFileManager'a ihtiyacınız yoktur.

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]; 

Düzenleme: Eğer görüntüler iOS Kamera oluştururlar saklıyorsanız , doğru yöne görüntüleri döndürebilirsiniz nasıl görünebilir. Look here in that case.

+0

Teşekkürler ama görüntüyü yüklediğimde bana yanlış yönlendirme gösterdi. – user1234096

+0

@JonasSchnelli ... bu yüzden NSCoding'i önerdim. –

+1

@Matisse VerDuyn: tamam. bir artı. Ama "el" ile çevirmek o kadar da zor değil. :) –

1

bir dosya olarak kaydetmek için, bir plist koymak veya görüntünün bir png/jpg gösterimini oluşturmak gerekir ya. UIImage verilerini NSCoding ile biraz daha kolay kaydedebilirsiniz.

fazla bilgi için bu öğretici bakınız: Burada http://www.raywenderlich.com/1914/how-to-save-your-app-data-with-nscoding-and-nsfilemanager

+1

Hmm ... neden NSCoding kullanıyorsunuz? Pekala: belki de karmaşık nesne yapılarını UIImages ile depolamaya çalıştığınızda. Kodlama işlemi aynı zamanda CPU kenelerini de yiyor. –