调用系统相机和相册 (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开发 调用系统相机和相册 分类: ios技术 2015-03-30 15:52 65人阅读 评论(0) 收藏的更多相关文章

  1. 8大排序算法图文讲解 分类: B10_计算机基础 2014-08-18 15:36 243人阅读 评论(0) 收藏

    排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 常见的内部排序算法有:插入排序.希尔排序. ...

  2. javascript中0级DOM和2级DOM事件模型浅析 分类: C1_HTML/JS/JQUERY 2014-08-06 15:22 253人阅读 评论(0) 收藏

    Javascript程序使用的是事件驱动的设计模式,为一个元素添加事件监听函数,当这个元素的相应事件被触发那么其添加的事件监听函数就被调用: <input type="button&q ...

  3. XHTML 结构化:使用 XHTML 重构网站 分类: C1_HTML/JS/JQUERY 2014-07-31 15:58 249人阅读 评论(0) 收藏

    http://www.w3school.com.cn/xhtml/xhtml_structural_01.asp 我们曾经为本节撰写的标题是:"XHTML : 简单的规则,容易的方针.&qu ...

  4. DZY Loves Chemistry 分类: CF 比赛 图论 2015-08-08 15:51 3人阅读 评论(0) 收藏

    DZY Loves Chemistry time limit per test 1 second memory limit per test 256 megabytes input standard ...

  5. iOS开发 调用系统相机和相册

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

  6. 苹果应用商店AppStore审核中文指南 分类: ios相关 app相关 2015-07-27 15:33 84人阅读 评论(0) 收藏

    目录 1. 条款与条件 2. 功能 3. 元数据.评级与排名 4. 位置 5. 推送通知 6. 游戏中心 7. 广告 8. 商标与商业外观 9. 媒体内容 10. 用户界面 11. 购买与货币 12. ...

  7. Mahout快速入门教程 分类: B10_计算机基础 2015-03-07 16:20 508人阅读 评论(0) 收藏

    Mahout 是一个很强大的数据挖掘工具,是一个分布式机器学习算法的集合,包括:被称为Taste的分布式协同过滤的实现.分类.聚类等.Mahout最大的优点就是基于hadoop实现,把很多以前运行于单 ...

  8. Matlab调用C程序 分类: Matlab c/c++ 2015-01-06 19:18 464人阅读 评论(0) 收藏

    Matlab是矩阵语言,如果运算可以用矩阵实现,其运算速度非常快.但若运算中涉及到大量循环,Matlab的速度令人难以忍受的.当必须使用for循环且找不到对应的矩阵运算来等效时,可以将耗时长的函数用C ...

  9. vs2008 多人同时开发项目时的代码注释规范格式 分类: C#小技巧 2014-04-23 14:12 297人阅读 评论(0) 收藏

    多人同时开发一个项目,区分项目的那个窗体是谁开发的,例:下面的格式 /************************************************       模块:服务器设置   ...

随机推荐

  1. MaterialEditText 控件学习

    这个视图原始框架地址:https://github.com/rengwuxian/MaterialEditText 指导手册:http://www.rengwuxian.com/post/materi ...

  2. Git 分支 - 分支的衍合

    分支的衍合 把一个分支中的修改整合到另一个分支的办法有两种:merge 和 rebase(译注:rebase 的翻译暂定为“衍合”,大家知道就可以了.).在本章我们会学习什么是衍合,如何使用衍合,为什 ...

  3. Apache无法启动提示the requested operation has failed

    主要参考这篇 http://apps.hi.baidu.com/share/detail/15868128 但还是遇到一些问题,记录如下: 1. 配置完成后,restart apache,出现 the ...

  4. boost之词法解析器spirit

    摘要:解析器就是编译原理中的语言的词法分析器,可以按照文法规则提取字符或者单词.功能:接受扫描器的输入,并根据语法规则对输入流进行匹配,匹配成功后执行语义动作,进行输入数据的处理. C++ 程序员需要 ...

  5. android - 自定义(组合)控件 + 自定义控件外观

    转载:http://www.cnblogs.com/bill-joy/archive/2012/04/26/2471831.html android - 自定义(组合)控件 + 自定义控件外观   A ...

  6. SoftReference 介绍

    1 Java中的SoftReference 2 即对象的软引用.如果一个对象具有软引用,内存空间足够,垃 圾回收器就不会回收它:如果内存空间不足了,就会回收这些对象的内存.只要垃圾回收器没有回收它,该 ...

  7. java删除文件夹 Java中实现复制文件或文件夹

    删除文件夹 import java.io.File; public class DeleteDir { /** * @param args */ public static void main(Str ...

  8. css盒子

    <html><head lang="en"> <meta charset="UTF-8"> <title>< ...

  9. MJExtention

    + (NSDictionary *)mj_objectClassInArray { // key : 属性名 // value : 类名 return @{ @"dogs" : @ ...

  10. Struts2.3.16日志(中)

    Result Configuration --Result 配置 当一个操作类方法完成后,它将返回一个字符串.字符串的值是用来选择一个元素的结果.一个操作映射的结果往往会有一组代表不同的可能的结果.一 ...