私の連絡先アプリケーションでは、画像ビューを使用して連絡先の画像を表示しました。
このプロセスでは、データを保存するときに、連絡先の画像も保存できます (文字列、画像ファイル名の形式で)。
サンドボックス(ドキュメントディレクトリ)に画像をコピーし、画像のファイル名を保存します
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{
NSString *DirectoryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
[[NSUserDefaults standardUserDefaults] setValue:storedPicsDict.contactImage forKey:@"oldContactPic"];
//To SET the NEw IMAGE images from directory path
CFUUIDRef uuid = CFUUIDCreate(NULL);
CFStringRef generatedUUIDString = CFUUIDCreateString(NULL, uuid);
CFRelease(uuid);
NSString* hashKey = [(NSString*)generatedUUIDString autorelease];
self.ContactImageFilePath = [NSString stringWithFormat:@"%@/%@.png",DirectoryPath,hashKey];
storedPicsDict.contactImage = self.ContactImageFilePath;
[contactPicture setImage:image forState:UIControlStateNormal];
isNewContactImage = true;
}
[picker dismissModalViewControllerAnimated:YES];
}
それぞれの保存画像が連絡先の情報に表示されます。
しかし、6/7 を超える画像をいくつか保存すると、メモリ警告が発生し、アプリがクラッシュしたり遅くなったりします。*
だから私は低解像度と低メモリサイズで画像を保存する必要があります、
どうですか、ありがとう