1、UIImagePickerController是系统提供的用来获取图片或视频的接口,使用UIImagePickerController类来获取图片的基本步骤如下:

a.初始化UIImagePickerController类

b.设置UIImagePickerController实例的数据来源

c.设置UIImagePickerController实例的代理

d.设置是否允许编辑图片,若允许则allowsEditing属性值置为YES

e.设置完UIImagePickerController实例的属性之后,在需要获取图片时要跳转到图像选取控制器当中去选取或拍摄图片

f.完成图片的选取后回调代理方法

2、 UIImagePickerController数据来源:

1.UIImagePickerControllerSourceTypePhotoLibrary:表示从照片库/集选取照片

2.UIImagePickerControllerSourceTypeCamera:表示从摄像头选取照片

3.UIImagePickerControllerSourceTypeSavedPhotosAlbum:表示仅仅从相册中选取照片。

判断设备是否支持照相机/图片库/相册功能

UIImagePickerControllerSourceTypePhotoLibrary ,//来自图库

UIImagePickerControllerSourceTypeCamera ,//来自相机

UIImagePickerControllerSourceTypeSavedPhotosAlbum //来自相册

判断设备是否支持前置摄像头/后置摄像头

UIImagePickerControllerCameraDeviceRear,

UIImagePickerControllerCameraDeviceFront

判断设备是否支持前置摄像头闪光灯/后置摄像头闪光灯

UIImagePickerControllerCameraDeviceRear,

UIImagePickerControllerCameraDeviceFront

返回前置摄像头/后置摄像头支持的拍摄类型

UIImagePickerControllerCameraDeviceRear,

UIImagePickerControllerCameraDeviceFront

返回照相机/相册/照片库所支持的媒体类型

字典中的键:

UIImagePickerControllerMediaType ;指定用户选择的媒体类型(文章最后进行扩展)

UIImagePickerControllerOriginalImage ;原始图片

UIImagePickerControllerEditedImage ;修改后的图片

UIImagePickerControllerCropRect ;裁剪尺寸

UIImagePickerControllerMediaURL ;媒体的URL

UIImagePickerControllerReferenceURL ;原件的URL

UIImagePickerControllerMediaMetadata;当来数据来源是照相机的时候这个值才有效

返回类型有照片和视频

UIImagePickerControllerCameraCaptureModePhoto,

UIImagePickerControllerCameraCaptureModeVideo

返回类型有kUTTypeMovie,kUTTypeImage,其他类型均在下

kUTTypeImage

const CFStringRef  kUTTypeImage ;抽象的图片类型

const CFStringRef  kUTTypeJPEG ;

const CFStringRef  kUTTypeJPEG2000 ;

const CFStringRef  kUTTypeTIFF ;

const CFStringRef  kUTTypePICT ;

const CFStringRef  kUTTypeGIF ;

const CFStringRef  kUTTypePNG ;

const CFStringRef  kUTTypeQuickTimeImage ;

const CFStringRef  kUTTypeAppleICNS

const CFStringRef kUTTypeBMP;

const CFStringRef  kUTTypeICO;

kUTTypeMovie

const CFStringRef  kUTTypeAudiovisualContent ;抽象的声音视频

const CFStringRef  kUTTypeMovie ;抽象的媒体格式(声音和视频)

const CFStringRef  kUTTypeVideo ;只有视频没有声音

const CFStringRef  kUTTypeAudio ;只有声音没有视频

const CFStringRef  kUTTypeQuickTimeMovie ;

const CFStringRef  kUTTypeMPEG ;

const CFStringRef  kUTTypeMPEG4 ;

const CFStringRef  kUTTypeMP3 ;

const CFStringRef  kUTTypeMPEG4Audio ;

const CFStringRef  kUTTypeAppleProtectedMPEG4Audio;

1、//判断设备是ipad

#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

注意:打开相册:(区分pad和iphone)

a.如果从一个导航按钮处呈现,使用:presentPopoverFromBarButtonItem:permittedArrowDirections:animated:;

b.如果要从一个视图出呈现,使用:presentPopoverFromRect:inView:permittedArrowDirections:animated:

c.如果设备旋转以后,位置定位错误需要在父视图控制器的下面方法里面重新定位:didRotateFromInterfaceOrientation:(在这个方法体里面重新设置rect)

然后再次调用:

- (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated

2、imagePickerController.allowsEditing = NO;//不显示图片剪裁框;

如果不显示图片,在获取图片的方法里获取设置成如下:

image = [info objectForKey:UIImagePickerControllerOriginalImage];

转载于:https://www.cnblogs.com/yuhao309/p/5716026.html

UIImagePickerController的知识点总结相关推荐

  1. 解释型语言与编译型的必须知识点

    解释型语言与编译型的必须知识点 概念: 计算机不能理解直接理解高级语言,只能理解机器语言,所以必须把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序. 翻译的方式有两种: 编译 解释 两种翻译 ...

  2. YOLOV4知识点分析(二)

    YOLOV4知识点分析(二) 数据增强相关-mixup 论文名称:mixup: BEYOND EMPIRICAL RISK MINIMIZATION 论文地址:https://arxiv.org/ab ...

  3. YOLOV4知识点分析(一)

    YOLOV4知识点分析(一) 简 介 yolov4论文:YOLOv4: Optimal Speed and Accuracy of Object Detection arxiv:https://arx ...

  4. 你需要掌握的有关.NET DateTime类型的知识点和坑位 都在这里

    引言    DateTime数据类型是一个复杂的问题,复杂到足以让你在编写[将日期从Web服务器返回到浏览器]简单代码时感到困惑. ASP.NET MVC 5和 Web API 2/ASP.NETCo ...

  5. 简练软考知识点整理-范围确认易混概念

    与确认范围容易混淆的知识点包括,确认范围与核实产品.质量控制.项目收尾,下面进行比较分析. (1)确认范围与核实产品 核实产品是针对产品是否完成,在项目(或阶段)结束时由发起人或客户来验证,强调产品是 ...

  6. 朴素贝叶斯知识点概括

    1. 简述 贝叶斯是典型的生成学习方法 对于给定的训练数据集,首先,基于特征条件独立假设,学习输入/输出的联合概率分布:然后,基于此模型,对于给定的输入x,根据贝叶斯定理求后验概率最大的输出y 术语说 ...

  7. 计算机二级函数知识,2017年全国计算机二级考试MS Office高级应用知识点:INDIRECT函数...

    INDIRECT函数知识点 适用考试:全国计算机二级考试 考试科目:MS Office高级应用 科目知识点:INDIRECT函数 INDIRECT函数立即对引用进行计算,并显示其内容.当需要更改公式中 ...

  8. python如何创建一个类_python (知识点:类)简单的创建一个类

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ Created on Mon Nov 14 01:01:29 2016 ...

  9. 全国计算机二级vfp知识点,全国计算机二级VFP知识点总结

    全国计算机二级 Visual FoxPro 数据库程序设计 --知识点整理资料 文件扩展名及备注文件扩展名 文件 项目 表 程序 单索引 查询 菜单定义格式 扩展名 .pjx .dbf .prg .i ...

  10. golang sdk后端怎么用_Golang资深后端工程师需要了解的知识点

    前提: 因近段时间,我在考虑新的工作机会,并在自己的以往的工作内容做了一些简单的总结,以及部分在面试过程当中遇到了一些新的问题,总结一篇关于Golang工程师针对后端开发的一些知识点. 本文仅作为参考 ...

最新文章

  1. 小麦带你看postgres(代码模块结构)
  2. (转载)一种根据纠偏数据对火星坐标进行完美拟合的方法
  3. oracle 常用命令大汇总
  4. MIS开发中C/S模式与B/S模式的结合策略
  5. web标准---html、css、js分离
  6. 1057. 数零壹(20)
  7. Openssh学习笔记
  8. webpack4.x 模块化浅析-CommonJS
  9. [转载] Linux启动过程详解-《别怕Linux编程》之八
  10. python为什么closed_为什么python类的函数被调用两次[关闭](Why a function of python class is called twice [closed])...
  11. Spring Boot笔记-echarts的使用及数据的修改
  12. 为什么美团全面推动 K8S 落地,咬紧牙关也要搞云原生?
  13. 山东科技大学计算机基础知识,山东科技大学_计算机操作系统试题
  14. 二维码生成易语言代码
  15. 固态和机械硬盘组raid_相同大小的固态硬盘和机械硬盘组RAID1会不会影响固态硬盘的速度?...
  16. Cityscapes数据集gtFine部分介绍
  17. Android之视频裁剪
  18. (数据科学学习手札37)ggplot2基本绘图语法介绍
  19. speedoffice文档中如何快速撤回到上一步操作
  20. 啦百茁仲尾芬八敌直就乖虏举删捅

热门文章

  1. [.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能
  2. uva 10308 Roads in the North
  3. 浅谈Hybrid技术的设计与实现
  4. 一个工作三年左右的Java程序员跟大家分享从业心得
  5. 离职阿里4年后,我给年轻人的7点建议
  6. android 上传图片给js,安卓中HTML5图片上传实例详解
  7. Python3选择支持非ASCII码标识符的缘由
  8. vscode settings.json配置
  9. Hive编程指南pdf
  10. Activity是如何挂载Pargment的Day35