• 系统提供的UIImagePickerController


    1.从系统相册中读取

         /*

         判断选择的读取类型是否支持

         UIImagePickerControllerSourceTypePhotoLibrary,普通相册

         UIImagePickerControllerSourceTypeCamera, 镜头(拍照、录视频)

         UIImagePickerControllerSourceTypeSavedPhotosAlbum(自己保存的图片)

         */

        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {

            self.imagePC = [[UIImagePickerController alloc] init];

            _imagePC.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

            

            //相册操作由代理来监听 取消还是选择完成

            _imagePC.delegate = self;

            

            //展示相册

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

        }

    2.拍照录视频

      if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

            self.imagePC = [[UIImagePickerController alloc] init];

            _imagePC.delegate = self;

            _imagePC.sourceType = UIImagePickerControllerSourceTypeCamera;

            //图片 public.image

            //视频 public.movie

            _imagePC.mediaTypes = @[@"public.movie"];

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

        }

    3.代理

    读取图片或者视频 统一回调这个代理

    系统相册 一次只能选取一张

    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{

        [self dismissViewControllerAnimated:YES completion:nil];

        

        NSLog(@"%@", info);

    //    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

    //    NSData *data = UIImagePNGRepresentation(image);

    //    NSUInteger byte = data.length/8;

    //    NSUInteger k = byte / 1024;

    //    NSUInteger m = k / 1024;

    //    NSLog(@"%ld", m);计算照片大小

    }

     

    //取消按钮被按了

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

        [self dismissViewControllerAnimated:YES completion:nil];

    }

    4.将图片保存到系统相册

    UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);

  • 相关阅读:
    IE浏览器和谷歌浏览器相互跳转
    centos7安装docker
    centos7安装groovy
    centos7安装NodeJs
    mongodb数据库的备份还原
    centos7最小版配置
    centos7中python2.7升级到python3.7
    typedef struct用法详解与小结
    MinGW的gdb调试
    MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本
  • 原文地址:https://www.cnblogs.com/damonWq/p/5342861.html
Copyright © 2020-2023  润新知