ユーザーがフォトアルバムから選択できるサムネイル画像を含むカスタムセルがあります。イメージを Core Data に保存するとパフォーマンスが低下することはわかっているので、ファイル システムを使用する必要があります。
誰もがこれに関するいくつかの優れたチュートリアルをお勧めします。そこに画像を保存していない場合、コアデータに正確に何を保存する必要がありますか。
サムネイルだけでなく、大きな画像も保存します。
ユーザーがフォトアルバムから選択できるサムネイル画像を含むカスタムセルがあります。イメージを Core Data に保存するとパフォーマンスが低下することはわかっているので、ファイル システムを使用する必要があります。
誰もがこれに関するいくつかの優れたチュートリアルをお勧めします。そこに画像を保存していない場合、コアデータに正確に何を保存する必要がありますか。
サムネイルだけでなく、大きな画像も保存します。
UIImage*image = [UIImage imageNamed:@"the image you wish to save.jpg"];
//build the path for your image on the filesystem
NSArray *dirPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docsDir = [dirPath objectAtIndex:0];
NSString* photoName = @"imageName.jpg";
NSString *photoPath = [docsDir stringByAppendingPathComponent:photoName];
//get the imageData from your UIImage
float imageCompression = 0.5;
NSData *imageData = UIImageJPEGRepresentation(image, imageCompression);
//save the image
if(![imageData writeToFile:path atomically:YES]){
return FALSE;
}
//store the imagePath to your model
photoModal.filePathImage = photoPath;
チップ:
コアデータdbに2つのフィールドが必要ですthumbnailPath
::NSString
およびoriginalPath
:NSString
ファイルマネージャを使用して、特定のパスにサムネイルと元の画像を作成します。したがって、次のようになります。..../thumbs/myPicture_thumb.jpg AND .... / originals / myPicture.jpg次に、この2つのパスをコアデータデータベースに保存します。
それらの1つを表示したい場合は、次のメソッドを使用しますUIImage
:imageWithContentsOfFile
それで全部です
画像をにApplication Documents Folder
保存し、画像のパスをCoreDataまたはsqliteに保存できます。画像とそのパスを参照してください。