zoukankan      html  css  js  c++  java
  • iOS开发小技巧--相机相册的正确打开方式

    iOS相机相册的正确打开方式- UIImagePickerController

    • 通过指定sourceType来实现打开相册还是相机
    UIImagePickerControllerSourceTypePhotoLibrary, // 相册库,范围比PhotosAlbum要大
    UIImagePickerControllerSourceTypeCamera, // 相机
    UIImagePickerControllerSourceTypeSavedPhotosAlbum // 相册
    
    • 打开之前一定判断设备是否可用[UIImagePickerController isSourceTypeAvailable:type]
    /// 打开相机
    - (void)openCamera
    {
        [self openImagePickerControllerWithType:UIImagePickerControllerSourceTypeCamera];
    }
    /// 打开相册
    - (void)openAlbum
    {
        [self openImagePickerControllerWithType:UIImagePickerControllerSourceTypePhotoLibrary];
    }
    /// 打开ImagePickerController的方法
    - (void)openImagePickerControllerWithType:(UIImagePickerControllerSourceType)type
    {
        // 设备不可用  直接返回
        if (![UIImagePickerController isSourceTypeAvailable:type]) return;
    
        UIImagePickerController *imgPicker = [[UIImagePickerController alloc] init];
        imgPicker.sourceType = type;
        imgPicker.delegate = self;
        [self presentViewController:imgPicker animated:YES completion:nil];
    }
    
    • 代理方法中,获取选中图片注意:一定记得dismiss
    #pragma mark - UINavigationControllerDelegate, UIImagePickerControllerDelegate
    // 选择照片之后
    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info
    {
    //    ChaosLog(@"%@",info);
        // 获取用户选择的图片
        UIImage *image = info[UIImagePickerControllerOriginalImage];
    
        [self.photosView addPhoto:image];
    
        // 退出imagePickerController
        [self dismissViewControllerAnimated:YES completion:nil];
        [self.textView becomeFirstResponder];
    }
    
    • 系统自带的只能单选,实现多选要用大如图的库

  • 相关阅读:
    1016: 写出来吧
    从硬件工程师转到纯软件开发,回顾那些岁月
    用大白话聊聊JavaSE -- 自定义注解入门
    数组中的一些常用方法总结
    js中的隐式转换
    开源OSS.Social微信项目进阶介绍
    .Net开源oss项目进度更新(含小程序接口)
    windows下部署免费ssl证书(letsencrypt)
    完成OSS.Http底层HttpClient重构封装 支持标准库
    谈javascript变量声明
  • 原文地址:https://www.cnblogs.com/gchlcc/p/5760189.html
Copyright © 2011-2022 走看看