调用系统相机和相册 (iPad,iPhone)
打开相机:(iPad,iPhone)
//先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库  
    UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;  
//    if (![UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]) {  
//        sourceType = UIImagePickerControllerSourceTypePhotoLibrary;  
//    }  
    //sourceType = UIImagePickerControllerSourceTypeCamera; //照相机  
    //sourceType = UIImagePickerControllerSourceTypePhotoLibrary; //图片库  
    //sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; //保存的相片  
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];//初始化  
    picker.delegate = self;  
    picker.allowsEditing = YES;//设置可编辑  
    picker.sourceType = sourceType;  
    [self presentModalViewController:picker animated:YES];//进入照相界面  
    [picker release];

打开相册:(区分pad和iphone)for iphone:
UIImagePickerController *pickerImage = [[UIImagePickerController alloc] init];  
    if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {  
        pickerImage.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;  
        //pickerImage.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;  
        pickerImage.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:pickerImage.sourceType];  
          
    }  
    pickerImage.delegate = self;  
    pickerImage.allowsEditing = NO;  
    [self presentModalViewController:pickerImage animated:YES];  
    [pickerImage release];

打开相册for ipad:
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypePhotoLibrary;  
    //sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; //保存的相片  
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];  
    picker.delegate = self;  
    picker.allowsEditing = NO;//是否允许编辑  
    picker.sourceType = sourceType;  
    /* 
     如果从一个导航按钮处呈现,使用: 
     presentPopoverFromBarButtonItem:permittedArrowDirections:animated:; 
     如果要从一个视图出呈现,使用: 
     presentPopoverFromRect:inView:permittedArrowDirections:animated: 
      
     如果设备旋转以后,位置定位错误需要在父视图控制器的下面方法里面重新定位: 
     didRotateFromInterfaceOrientation:(在这个方法体里面重新设置rect) 
     然后再次调用: 
     - (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated              
     */  
    //UIPopoverController只能在ipad设备上面使用;作用是用于显示临时内容,特点是总是显示在当前视图最前端,当单击界面的其他地方时自动消失。  
    UIPopoverController *popover = [[UIPopoverController alloc]initWithContentViewController:picker];  
    self.imagePicker = popover;  
    //permittedArrowDirections 设置箭头方向  
    [self.imagePicker presentPopoverFromRect:CGRectMake(0, 0, 300, 300) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];  
    [picker release];  
    [popover release];

点击相册中的图片 货照相机照完后点击use
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

点击cancel 调用的方法
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker

注意:需要添加@property (nonatomic, retain) UIPopoverController *imagePicker;

iOS开发 调用系统相机和相册的更多相关文章

  1. iOS开发 调用系统相机和相册 分类: ios技术 2015-03-30 15:52 65人阅读 评论(0) 收藏

     调用系统相机和相册 (iPad,iPhone) 打开相机:(iPad,iPhone) //先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为 ...

  2. Android调用系统相机和相册并解决data为空,OOM,图片角度不对的问题

    最近公司项目用到手机拍照的问题,好不容易在网上copy了一些代码,但是运行起来一大堆bug,先是三星手机上运行程序直接崩掉,debug了一下原来是onActivityResult中data返回为空,找 ...

  3. ios开发-调用系统自带手势

    在 iPhone 或 iPad 的开发中,除了用 touchesBegan / touchesMoved / touchesEnded 这组方法来控制使用者的手指触控外,也可以用 UIGestureR ...

  4. ios开发之--从相机或相册选取图片,并带删除操作的demo

    多选图片的一个效果,如下图:

  5. iOS中 读取相册,调用系统相机 技术分享

    技术内容:分别读取相册以及调取相机,将图片显示到imageView上 布局: 1.创建imageView 和 button 并为button一个关联pickerImage的事件 <div sty ...

  6. Android7.0调用系统相机拍照、读取系统相册照片+CropImageView剪裁照片

    Android手机拍照.剪裁,并非那么简单 简书地址:[我的简书–T9的第三个三角] 前言 项目中,基本都有用户自定义头像或自定义背景的功能,实现方法一般都是调用系统相机–拍照,或者系统相册–选择照片 ...

  7. Android 调用系统相机拍照保存以及调用系统相册的方法

    系统已经有的东西,如果我们没有新的需求的话,直接调用是最直接的.下面讲讲调用系统相机拍照并保存图片和如何调用系统相册的方法. 首先看看调用系统相机的核心方法: Intent camera = new ...

  8. 【踩坑速记】MIUI系统BUG,调用系统相机拍照可能会带给你的一系列坑,将拍照适配方案进行到底!

    一.写在前面 前几天也是分享了一些学习必备干货(还没关注的,赶紧入坑:传送门),也好久没有与大家探讨技术方案了,心里也是挺痒痒的,这不,一有点闲暇之时,就迫不及待把最近测出来的坑分享给大家. 提起An ...

  9. android调用系统相机并获取图片

    如果不是特别的要求,通过拍照的方式取得图片的话,我们一般调用系统的拍照来完成这项工作,而没必要再自己去实现一个拍照功能.调用系统相机很简单,只需要一个intent就可以跳转到相几界面,然后再通过onA ...

随机推荐

  1. Vector2.Angle 的 bug

    获取角度 ,官方提供了 Vector2.Angle 来得值,他的值是在 0  ,180之间 原始代码是 public static float Angle(Vector3 from, Vector3 ...

  2. eclipse没有(添加)"Dynamic Web Project"选项的方法【转载】

    第一种方法: 你安装的是专门开发java项目的,而Dynamic Web Project  属于J2EE技术,所以你要专门下载一个集成了J2EE插件的Eclipse,(eclipse-jee-heli ...

  3. UVA - 10048 Audiophobia (Floyd应用)

    题意:求出两点之间所有路径最大权值的最小值. 思路:转变一下Floyd的形式即可: 注意:注意初始化问题,还有UVA奇葩的输出形式. 代码如下: #include<iostream> #i ...

  4. Node.js学习 - Route

    Node.js 路由 URL解析,需要url和querystring两个模块url.parse(string).query | url.parse(string).pathname | | | | | ...

  5. Java8学习笔记----Lambda表达式 (转)

    Java8学习笔记----Lambda表达式 天锦 2014-03-24 16:43:30 发表于:ATA之家       本文主要记录自己学习Java8的历程,方便大家一起探讨和自己的备忘.因为本人 ...

  6. Json解析要点

    解析Json时,昨天遇到了新的问题,之前都是解析的数组,不是数组的用类来做. 这是Json串; {"status":"00001","ver" ...

  7. MySQL查询order by相减select相减的Sql语句

    先看一张表 create_time是订单创建时间,pay_time是支付时间 现在我想按照订单完成耗时的时间进行排序,并且取出来的数据中直接算好了差值,怎么用Sql呢,请看 select id,tid ...

  8. 在数据库里面有这么一个表:用m代表男,用f代表女,现在我要输出格式为中文的:男和女,sql语句该怎么写

    在数据库里面有这么一个表:用m代表男,用f代表女,现在我要输出格式为中文的:男和女, sql语句该怎么写 select  case sex when 'm' then '男' else '女'   a ...

  9. zf-关于分页的行数如何配置

    公司的项目分页显示行数是在web.xml里配置的 对应的java 文件是 BaseAction 这个文件里面写的就是分页的代码

  10. iOS触摸事件深入

    转载自:http://www.cnblogs.com/wengzilin/p/4720550.html 概述 本文主要解析从我们的手指触摸苹果设备到最终响应事件的整个处理机制.本质上讲,整个过程可以分 ...