欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

iOS----------调用系统照相机和相册

程序员文章站 2022-03-23 09:38:53
iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和 ......

iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限,iOS 10 以后记得在plist里面添加获取拍照和相册权限。

 

/**

 *  调用照相机

 */

- (void)openCamera

{

    UIImagePickerController *picker = [[UIImagePickerController alloc] init];

    picker.delegate = self;

    picker.allowsEditing = YES; //可编辑

    //判断是否可以打开照相机

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])

    {

        //摄像头

        picker.sourceType = UIImagePickerControllerSourceTypeCamera;

        [self presentViewController:picker animated:YES completion:nil];

    }

    else

    {

        NSLog(@"没有摄像头");

    }

}

 

 

/**

 *  打开相册

 */

-(void)openPhotoLibrary

{

    // Supported orientations has no common orientation with the application, and [PUUIAlbumListViewController shouldAutorotate] is returning YES

    

    // 进入相册

    if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])

    {

        UIImagePickerController *imagePicker = [[UIImagePickerController alloc]init];

        imagePicker.allowsEditing = YES;

        imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

        imagePicker.delegate = self;

        [self presentViewController:imagePicker animated:YES completion:^{

            NSLog(@"打开相册");

        }];

    }

    else

    {

        NSLog(@"不能打开相册");

    }

}

 

#pragma mark - UIImagePickerControllerDelegate

// 拍照完成回调

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(nullable NSDictionary<NSString *,id> *)editingInfo NS_DEPRECATED_IOS(2_0, 3_0)

{

    NSLog(@"finish..");

    

    if(picker.sourceType == UIImagePickerControllerSourceTypeCamera)

    {

        //图片存入相册

        UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);

    }

    

    [self dismissViewControllerAnimated:YES completion:nil];

}

//进入拍摄页面点击取消按钮

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker

{

    [self dismissViewControllerAnimated:YES completion:nil];

}