拍照并保存到相机胶卷

5

我遇到了一个问题,我只想要一个简单的解决方案来拍照并将其保存在我的应用程序中。但是到目前为止,我只能拍照,让它在UIImageView中加载,但它并没有保存在相机胶卷中。

- (IBAction)takePhoto:(UIButton *)sender 
{
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];
    picker.delegate = self;
    picker.allowsEditing = YES;
    picker.sourceType = UIImagePickerControllerSourceTypeCamera;

    [self presentViewController:picker animated:YES completion:NULL];
}  

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{
    UIImage *chosenImage = info[UIImagePickerControllerEditedImage];
    self.imageView.image = chosenImage;

    [picker dismissViewControllerAnimated:YES completion:NULL];
}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker 
{
    [picker dismissViewControllerAnimated:YES completion:NULL];
}

希望能得到关于这个问题的任何帮助,真的非常感激。相信我,我确实需要它。


可能是重复的问题:如何将图像保存到相机胶卷? - klcjr89
2个回答

13

你会想要做这个:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    UIImage *chosenImage = info[UIImagePickerControllerEditedImage];

    self.imageView.image = chosenImage;

    UIImageWriteToSavedPhotosAlbum(chosenImage, nil, nil, nil);

    [picker dismissViewControllerAnimated:YES completion:NULL];
}

1

Swift 4

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

    if(info[UIImagePickerControllerMediaType] as! String == "public.image"){

        guard let curImage:UIImage = info[UIImagePickerControllerOriginalImage] as? UIImage else{

        return

        }

        UIImageWriteToSavedPhotosAlbum(curImage, nil, nil, nil) 
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接