iOS开发之保存照片到系统相册(Photo Album)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS开发之保存照片到系统相册(Photo Album)相关的知识,希望对你有一定的参考价值。

ios开发之保存照片到系统相册(Photo Album)

 

保存照片到系统相册这个功能很多社交类的APP都有的,今天我们简单讲解一下,如何将图片保存到系统相册(Photo Album)。

创建UIImageView

创建UIImageView是为了将照片展示出来,我们是要把UIImage保存到系统相册(Photo Album):

#define SCREEN [UIScreen mainScreen].bounds.size

self.image = [UIImage imageNamed:@"iOSDevTip"];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake((SCREEN.width - 300) / 2, 70, 300, 150)];
imageView.image = self.image;
[self.view addSubview:imageView];

创建UIButton

创建UIButton并绑定actionClick:事件:

UIButton *button = [[UIButton alloc] init];
button.frame = CGRectMake( 100, 300, SCREEN.width - 200, 40);
[button addTarget:self action:@selector(actionClick:) forControlEvents:UIControlEventTouchUpInside];
[button setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
[button setBackgroundColor:[UIColor orangeColor]];
[button setTitle:@"SavePhoto" forState:UIControlStateNormal];
[self.view addSubview:button];


- (void)actionClick:(UIButton *)button
{

}

保存照片到系统相册(Photo Album)

actionClick:方法里调用:

UIImageWriteToSavedPhotosAlbum(self.image, self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);

这个时候,我们想知道保存是否成功,所以需要制定回调方法

// 指定回调方法
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo
{
    if(!error){
        NSLog(@"save success");
    }else{
        NSLog(@"save failed");
    }
}

在这个方法里,我们就知道照片是否保存成功。然后,根据需求来刷新UI线程。用户第一次使用APP的时候,点击SavePhoto按钮的时候,系统会询问权限:

技术分享

Demo地址:iOSStrongDemo 下一篇文章,将会讲如何创建自己的相册并保存照片。

 

以上是关于iOS开发之保存照片到系统相册(Photo Album)的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发之保存照片到自己创建的相簿

iOS之保存图片到系统相册和从系统相册选取一张或者多张照片

iOS开发之保存照片到自己创建的相簿

保存图片到相册的解决方法

苹果手机怎么把微信里面的图片保存到相册

将照片保存到iOS相册,不要全部保存