调用系统相机和相册 (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. 查看log的方法

    adb logcat>1.txt adb shell cat /proc/atf_log/atf_log > atf_log 会保存在adb的本地文件. 还有一种是实时读取的方式: adb ...

  2. Lucene + Hadoop 分布式搜索运行框架 Nut 1.0a9转自http://www.linuxidc.com/Linux/2012-02/53113.htm

    1.概述 不管程序性能有多高,机器处理能力有多强,都会有其极限.能够快速方便的横向与纵向扩展是Nut设计最重要的原则,以此原则形成以分布式并行计算为核心的架构设计.以分布式并行计算为核心的架构设计是N ...

  3. 为什么Hbase能实现快速的查询

    你的快速是指什么? 是根据亿级的记录中快速查询,还是说以实时的方式查询数据. A:如果快速查询(从磁盘读数据),hbase是根据rowkey查询的,只要能快速的定位rowkey,  就能实现快速的查询 ...

  4. PAT1008

    1008. Elevator (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B The highest building in our city has on ...

  5. jQuery 1.9使用$.support替代$.browser的使用方法

    jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support jQuery 从 1.9 版开始,移除了 $.browser ...

  6. STL笔记之【map之添加元素】

    //---------------------------------------------------------// 向map中插入元素的方法比较//---------------------- ...

  7. eclipse myeclipse修改工作区间 an error has occurred. see error log for more details. java.lang.nullpointerexception 问题解决

    解决办法:修改项目工作空间. 修改工作空间,以前打开myEclipse时知道怎么改!现在只有找配置文件了! 步骤: MyEclipse 5.1.1 GA----->Eclipse-----> ...

  8. Android-----获取屏幕分辨率DisplayMetrics简介 .

    引自:http://blog.csdn.net/zhangqijie001/article/details/5894872 Android 可设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人 ...

  9. css盒子

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

  10. app每个页面都有一个相同的浮层控件 实现思路

    可以创建一个window,设置其windowLevel为alert;