Tim*_*Tim 19 iphone objective-c uiimagepickercontroller uiimage
我有一个使用的iPhone应用程序UIImagePickerController.就像sourceType我一样
因此,用户可以从照片或相机照片中制作照片或从照片库中选择一张照片.
图像将显示在UIImageView中.如果用户关闭应用程序,则应保存图像.所以对于文本字段,我使用NSUserDefaults.我知道,使用NSData将图像保存在NSUSerDefaults中并不是一个好方法,所以我想将图像保存/复制到由我的应用程序控制的文件夹,类似于NSUserDefaults.
我怎样才能做到这一点?我想保存它,然后我可以将文件的路径写入我的NSUserDefaults并在应用程序启动时读取它.
提前谢谢你和最诚挚的问候.
knu*_*uku 49
您可以在UIImagePickerControllerDelegate委托实现中使用以下代码
- (void) imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info {
//obtaining saving path
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *imagePath = [documentsDirectory stringByAppendingPathComponent:@"latest_photo.png"];
//extracting image from the picker and saving it
NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];
if ([mediaType isEqualToString:@"public.image"]){
UIImage *editedImage = [info objectForKey:UIImagePickerControllerEditedImage];
NSData *webData = UIImagePNGRepresentation(editedImage);
[webData writeToFile:imagePath atomically:YES];
}
}
Run Code Online (Sandbox Code Playgroud)
就这样
根据您要保存的文件格式,您可以使用
[UIImagePNGRepresentation(image) writeToFile:path atomically:YES];
Run Code Online (Sandbox Code Playgroud)
要么
[UIImageJPEGRepresentation(image) writeToFile:path atomically:YES];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33396 次 |
| 最近记录: |