系统简单的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);
转载于:https://www.cnblogs.com/huoran1120/p/5234116.html
系统简单的UIImagePickerController相关推荐
- 基于Struct的云和租房系统(简单房屋出租)
基于Struct的云和租房系统(简单房屋出租) 系统采用javaBean实现ORM对象关系映射,前台纯JSP实现,后台struct映射,适合刚学习J2EE的新手,代码思路清晰,注解详细,数据库用的是m ...
- 39条常见的Linux系统简单面试题
39条常见的Linux系统简单面试题 本文主要分享39条常见的Linux系统简单面试题,其中包括如何看当前Linux系统有几颗物理CPU和每颗CPU的核数.如何实时查看网卡流量为多少等等,希望对你有所 ...
- Java消息系统简单设计与实现
前言:由于导师在我的毕设项目里加了消息系统(本来想水水就过的..),没办法...来稍微研究研究吧..简单简单... 需求分析 我的毕设是一个博客系统,类似于简书这样的,所以消息系统也类似,在用户的消息 ...
- linux写入系统状态到文件夹,实验二 Linux系统简单文件操作命令
*实验二** Linux系统简单文件操作命令 项目内容 这个作业属于哪个课程 这个作业的要求在哪里 学号-姓名 17041518-孙小文 作业学习目标 学习在Linux系统终端下进行命令行操作 :掌握 ...
- Android 系统简单介绍
Android 系统简单介绍 2011年11月20日 写这篇文章的目的是为了给那些刚刚入手安 卓手机的新手们一些参考,希望他们能快速的上手 [第一期]ANDROID基础知识1~20 [第二期]继续泡! ...
- “飞天”就是一个操作系统,最重要的功能就是资源管理;这套系统简单说就是把所有资源抽象成一台计算机,并通过互联网提供计算服务。...
"飞天"就是一个操作系统,最重要的功能就是资源管理:这套系统简单说就是把所有资源抽象成一台计算机,并通过互联网提供计算服务. 转载于:https://www.cnblogs.com ...
- 四款python中文分词系统简单测试
四款python中文分词系统简单测试: 注:中科院分词可采用调用C库的方式使用 纠正下:中科院分词2012支持关键词提取 准确率测试(使用对应项目提供在线测试,未添加用户自定义词典) 结巴中文分词ht ...
- 简单的Linux操作命令,Linux系统简单文件操作命令
项目 内容 作业课程归属 学号-姓名 17041419-刘金林 作业学习目标 1)学习Linux的基本操作命令:2)在终端上运用命令行去实现基本文件操作 1.查看当前目录 问:提示符$与#的区别? 答 ...
- slim android7 nexus7,【畅玩7.0】加一直升pure nexus 7.0系统简单教程(1106更新)
本帖最后由 Mr不将就 于 2017-9-5 08:55 编辑 前言:作为一加老用户,看着广大网友依然坚守在第一代一加的版块,孜孜不倦的为大家搬运资源.分享心得体会,心里真是挺感动的.好久没发帖子了, ...
- BCS和ECCS等合并系统简单对比
ECCS BCS 合并数据来源 Ledger 09->Table GLT3 Ledger 1C->Table ECMCT 其他文本,Excxel,Access数据 FILE这事务码可设置逻 ...
最新文章
- 记一次zabbix启动不成功
- 来来来,个人blog第一弹——WordPress的Linux运行环境
- mysql 过程和函数 变量的值_MySQL数据库提升篇-----存储过程和函数
- css 定位兼容性,CSS基础:定位与浏览器兼容性
- 用MOS管防止电源反接的原理
- 说一说,求一个正整数的二进制中0的个数
- mysql定时sql脚本_定时执行的SQL脚本
- (72)FPGA模块调用(VHDL调用Verilog)
- linux :Tar 命令参数详解
- 51Nod-1001 数组中和等于K的数对【排序+二分查找】
- yyds!Java 性能优化的 50 个细节(珍藏版)
- easyui-textbox锁定按钮不锁定_EU5几乎锁定年度销量冠军,为何北汽新能源却高兴不起来?...
- 使用Java 10调用C/C++动态链接库dll之HelloWorld
- 第九届大唐杯省赛知识梳理-5G协议与信令(20%)
- 象牙大钢琴II压缩版-Synthogy Ivory by JR Samples II Kontakt
- php进行url转码,对url中的参数进行转码
- 使用pm2部署vue项目
- 计蒜客蓝桥杯模拟赛---青出于蓝而胜于蓝
- 安卓短信软件_【安卓清理君】极度舒适的垃圾清理工具
- java发送会议邀请邮件模板_使用java发送每封电子邮件的日历邀请