UIImagePickerController(获取相册图片,打开相机)

本文详细介绍了如何在iOS应用中使用UIImagePickerController进行照片选择和摄像头拍摄,并通过代理方法回调处理图片信息,最后展示了如何在ViewController中展示并处理选择或拍摄的图片。

UIImagePickerController的使用一定要在controller中,因为需要弹出控制器,如果不是在controller中,则可以通过响应者链查找获得controller,也可以通过代理方法回调

//本文查看地址http://write.blog.youkuaiyun.com/postedit


- (IBAction)pickPhotoLibrary:(id)sender {

    if (_imagePicker == nil) {

        _imagePicker = [[UIImagePickerController alloc] init];

    }

    _imagePicker.delegate = self;

    _imagePicker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;

    

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

}


- (IBAction)pickPhotoCamera:(id)sender {

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

        if (_imagePicker == nil) {

            _imagePicker = [[UIImagePickerController alloc] init];

        }

        _imagePicker.delegate = self;

        _imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;

        

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

    } else {

        

        NSLog(@"照相机不可用。");

    }

}



- (void) imagePickerControllerDidCancel: (UIImagePickerController *) picker {

    _imagePicker.delegate = nil;

    

    [self dismissViewControllerAnimated:YES completion:nil];

}


- (void) imagePickerController: (UIImagePickerController *) picker

 didFinishPickingMediaWithInfo: (NSDictionary *) info {

    

    UIImage *originalImage = (UIImage *) [info objectForKey:

                                          UIImagePickerControllerOriginalImage];

    /*-----------------------

     UIImagePickerControllerMediaType;    //由用户指定的媒体类型

     UIImagePickerControllerOriginalImage; //获取原始图片数据

     UIImagePickerControllerEditedImage;    //编辑后的图片数据

     UIImagePickerControllerCropRect;       //裁剪后的图片数据

     UIImagePickerControllerMediaURL;       //视频存放路径

     UIImagePickerControllerReferenceURL    //

     UIImagePickerControllerMediaMetadata    //

     */

    

    self.imageView.image = originalImage;

    //设置图片缩放填充

    self.imageView.contentMode = UIViewContentModeScaleAspectFill;

    

    _imagePicker.delegate = nil;

    

    [self dismissViewControllerAnimated:YES completion:nil];

    

}

//文章属于个人笔记,严禁商业转载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值