实例如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
if (picker.sourceType == UIImagePickerControllerSourceTypeCamera) {
UIImageWriteToSavedPhotosAlbum(image,self,@selector(image:didFinishSavingWithError:contextInfo:),NULL);
}
}
- (void)image:(UIImage*)image didFinishSavingWithError:(NSError*)error contextInfo:(void*)contextInfo
{
if (error) {
DLog(@"图片保存失败!");
}else{
DLog(@"图片保存成功!");
}
}
此方法可以把其他来源的图片也可保存到相册
//当image从相机中获取的时候存入相册中
//保存方法1
// UIImageWriteToSavedPhotosAlbum(img.image,self,@selector(image:didFinishSavingWithError:contextInfo:),NULL);
// imageData = nil;
WEAKSELF
//保存方法2同时获取保存的相片文件名
__blockALAssetsLibrary *lib = [[ALAssetsLibraryalloc] init];
[lib writeImageToSavedPhotosAlbum:img.image.CGImagemetadata:nilcompletionBlock:^(NSURL *assetURL,NSError *error) {
ALAssetsLibraryAssetForURLResultBlock resultblock = ^(ALAsset *imageAsset)
{
ALAssetRepresentation *imageRep = [imageAssetdefaultRepresentation];
weakSelf.imageName = [NSStringstringWithFormat:@"%@",[imageRepfilename]];
NSLog(@"[imageRep filename 1] : %@", [imageRepfilename]);
DBLog(@"self.addressImageName照相0 = %@",weakSelf.imageName);
commitBlock(img.image,UIImageJPEGRepresentation(img.image,0.5),self.imageName);
};
ALAssetsLibrary* assetslibrary = [[ALAssetsLibraryalloc] init];
[assetslibrary assetForURL:assetURLresultBlock:resultblock failureBlock:nil];
NSLog(@"assetURL = %@, error = %@", assetURL, error);
lib = nil;
}];
}];
|
以上这篇iOS 把图片保存到相册,并获取图片文件名的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/sevenquan/article/details/59094983