iOS获取系统相册中的图片

来源:互联网 发布:加入不了淘宝客 编辑:程序博客网 时间:2024/05/16 17:21

1.利用的UIImagePickerController可以从系统自带的应用程序(照片\相机)中获得图片
2.设置代理,遵守代理协议
注意这个UIImagePickerController类比较特殊,需要遵守两个代理协议

@interface ViewController () <UIImagePickerControllerDelegate, UINavigationControllerDelegate>

3.实现代理的方法didFinishPickingMediaWithInfo

- (void)getImageFromIpc{    // 1.判断相册是否可以打开    if (![UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) return;    // 2. 创建图片选择控制器    UIImagePickerController *ipc = [[UIImagePickerController alloc] init];    /**     typedef NS_ENUM(NSInteger, UIImagePickerControllerSourceType) {     UIImagePickerControllerSourceTypePhotoLibrary, // 相册     UIImagePickerControllerSourceTypeCamera, // 用相机拍摄获取     UIImagePickerControllerSourceTypeSavedPhotosAlbum // 相簿     }     */    // 3. 设置打开照片相册类型(显示所有相簿)      ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;    // ipc.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;    // 照相机    // ipc.sourceType = UIImagePickerControllerSourceTypeCamera;    // 4.设置代理    ipc.delegate = self;    // 5.modal出这个控制器    [self presentViewController:ipc animated:YES completion:nil];}#pragma mark -- <UIImagePickerControllerDelegate>--// 获取图片后的操作- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{    // 销毁控制器    [picker dismissViewControllerAnimated:YES completion:nil];    // 设置图片    self.imageView.image = info[UIImagePickerControllerOriginalImage];}
0 0
原创粉丝点击