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

调用系统相机和相册 (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;

时间: 2024-12-18 21:06:37

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

IOS开发调用系统相机和打开闪光灯

IOS开发调用系统相机和打开闪光灯      今天给大家分享一下如何调用iphone的拍照功能和打开闪光灯,有些代码我也不太理解,很多是在网上借鉴其他人的.IOS有两种的拍照和视频的方 式:1.直接使用UIImagePickerController,这个类提供了一个简单便捷的拍照与选择图片库里图片的功能.2.另一种是通过 AVFoundation.framework框架完全自定义拍照的界面和选择图片库界面.我只做了第一种,就先给大家介绍第一种做法: 一.首先调用接口前,我们需要先判断当前设备是否

Android 调用系统相机以及相册源码

Android 调用系统相机拍照.以及相册.完成之后图片是上传到app上.前面的功能已经测试过了.没有上传到服务器,因为我没服务器测试.但项目里面有个类可以参考上传图片到服务器,我就没测试了.接下来看代码,虽然注释写得少,但其作用看英文单词意思,又在或是查看调用. 项目源码下载地址:http://download.csdn.net/detail/qq_16064871/8585169 转载请注明出处: http://blog.csdn.net/qq_16064871 package com.ex

Android简单的调用系统相机和相册

  public void reasonAdd(View v)     {        final String [] strs=new String[]{"拍照","相册"};         AlertDialog.Builder builder=new AlertDialog.Builder(this);         builder.setTitle("照片");         builder.setItems(strs, new 

iOS 调用系统相机拍照相册功能

写一个按钮直接复制下面代码 视图必须继承 <UIImagePickerControllerDelegate,UIPopoverControllerDelegate,UIActionSheetDelegate>代理 //取拍照片 - (void)showActionSheet { UIActionSheet *sheet; if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCame

Android调用系统相机和相册

准备工作 权限 <!-- 往SDCard写入数据权限 --> <uses-permission android:name="android.permission. WRITE_EXTERNAL_STORAGE" /> <!--请求访问使用照相设备--> <uses-permission android:name="android.permission.CAMERA" /> 常量 public final static

iOS开发--调用系统通讯录界面

今天写代码遇到了要调用系统通讯录,看了一些博客发现写的都是获取通讯录的内容,而不是调用系统的界面. 分享一下自己写的代码 第一步:引入 #import <AddressBook/AddressBook.h> #import <AddressBookUI/AddressBookUI.h> 第二步:添加点击事件 创建一个通讯录界面 并以present的方式跳转 #pragma mark -- IBAction - (IBAction)buttonClicked:(id)sender {

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

技术内容:分别读取相册以及调取相机,将图片显示到imageView上 布局: 1.创建imageView 和 button 并为button一个关联pickerImage的事件 [objc] view plaincopy <div style="text-align: left;"><span style="font-family: Helvetica; -webkit-text-stroke-width: initial;">    sel

iOS调用系统相机

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])//判断相机是否可用,模拟器不可用相机. { UIImagePickerController *imagePickerController=[[UIImagePickerController alloc] init]; imagePickerController.delegate = self; imagePick

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

系统已经有的东西,如果我们没有新的需求的话,直接调用是最直接的.下面讲讲调用系统相机拍照并保存图片和如何调用系统相册的方法. 首先看看调用系统相机的核心方法: Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(camera, CAMERA); 相机返回的数据通过下面的回调方法取得,并处理: public static final int CAMERA  = 0x01; @Over