IOS成长之路-调用照相机和相册功能(转)

转载自:http://blog.csdn.net/like7xiaoben/article/details/8465237

  1. //先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库
  2. UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;
  3. //    if (![UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]) {
  4. //        sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
  5. //    }
  6. //sourceType = UIImagePickerControllerSourceTypeCamera; //照相机
  7. //sourceType = UIImagePickerControllerSourceTypePhotoLibrary; //图片库
  8. //sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; //保存的相片
  9. UIImagePickerController *picker = [[UIImagePickerController alloc] init];//初始化
  10. picker.delegate = self;
  11. picker.allowsEditing = YES;//设置可编辑
  12. picker.sourceType = sourceType;
  13. [self presentModalViewController:picker animated:YES];//进入照相界面
  14. [picker release];

打开相册:(区分pad和iphone)

for iphone:

[cpp] view plaincopy

  1. UIImagePickerController *pickerImage = [[UIImagePickerController alloc] init];
  2. if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
  3. pickerImage.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
  4. //pickerImage.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
  5. pickerImage.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:pickerImage.sourceType];
  6. }
  7. pickerImage.delegate = self;
  8. pickerImage.allowsEditing = NO;
  9. [self presentModalViewController:pickerImage animated:YES];
  10. [pickerImage release];

for ipad:

[cpp] view plaincopy

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

点击相册中的图片 货照相机照完后点击use  后触发的方法

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

点击cancel 调用的方法

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker

例子下载地址:http://download.csdn.net/download/like7xiaoben/4958356

时间: 2024-08-10 06:32:15

IOS成长之路-调用照相机和相册功能(转)的相关文章

IOS成长之路-调用照相机和相册功能

打开相机: //先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库 UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera; // if (![UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]

来自我的破船大大的博客,记录他的iOS成长之路,与君同勉!

注1:这篇文章是我的iOS成长之路系列文章中的第三篇文章,第一篇文章:iOS成长之路-1-入门,第二篇文章:iOS成长之路-2-我的第一个iOS Demo. 通过两周时间来学习iOS,我慢慢的叩开了iOS开发的大门,接下来就是一个积累的过程,我主要经历了如下几个过程: 饱览群书 跟着项目一起成长 与同行交流 做一些分享 饱览群书 在初期,我认为多看书对于个人提升有很大的帮助,从某方面来说,这主要扩展了个人对iOS开发的理解广度(初期,先不要急于往最深处研究),接着把书上的讲解与动手编程结合起来,

IOS成长之路-去掉屏幕键盘的方法

//定义两个文本框 UITextField *textName; UITextField *textSummary; //点击return 按钮 去掉 -(BOOL)textFieldShouldReturn:(UITextField *)textField { [textField resignFirstResponder]; return YES; } //点击屏幕空白处去掉键盘 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent

调用系统相机,相册功能

一开始的思路是这一块的功能单独出去;这样处理又会碰见很多问题. 还是集成在Activity中可能效果更好些, 而且三星的手机调用系统相机会导致调用的Activity会重启生命周期,如果是在fragment中调用的,会碰见更多的问题,做外包的伤不起,想深入下这个问题都没时间,暂时记录下在Activity中解决问题的方法,方便后面使用时直接拿来用. 比如在Activity中点击某个按钮,弹出一个对话框,选择拍照还是选择图片 mButton.setOnClickListener(new OnClick

iOS成长之路

iOS9开始的新特性 nonnull\__nonnull nullable\__nonnullable null_resettable NS_ASSUME_NONNULL_BEGIN \ NS_ASSUME_NONNULL_END 泛型\__contravariant\__covariant __kindof UIWindow(使用方法已经跟之前不一样,一定要加控制器) Storyboard Reference UIStackView Search API 3D touch  新技术的了解渠道

iOS 成长之路 使用cocoapod导入第三方文件

关于cocoapod的安装 1.下载 打开终端输入sudo gem install cocoapods 2.使用cocoapods 终端:cd 到当前项目目录 2.1 输入vim Podfile 键盘输入 i,进入编辑模式,输入 platform :ios, '7.0' pod '你要的第三方sdk名','~>版本' 按esc 输入‘ :’符号 再输入wq保存你的配置 安装 输入  pod install 没错误则成功    关闭你的项目 重新打开就可以使用 第三方的sdk了

iOS成长之路 百度地图

使用cocospod导入百度地图  详情见文档 使用 百度地图 需要获取密钥 2 配置 项目 info中 <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>保证网络可用 <key>LSApplicationQueriesSchemes</key> <array>

IOS成长之路-ASIHTTPRequest 断点续传

1.导入ASIHTTPRequest第三方类库 下载地址:ASIHttpRequest类库         完整代码下载:下载 2.在 .h 文件中 [cpp] view plaincopy #import <UIKit/UIKit.h> #import "ASIHTTPRequest.h" #import "ASINetworkQueue.h" @interface DownLoadViewController : UIViewController&l

IOS成长之路-Nsstring中搜索方法rangeOfString

NSString *str1 = @"can you \n speak English"; NSString *str = @"\n"; //在str1这个字符串中搜索\n,推断有没有 if ([str1 rangeOfString:str].location != NSNotFound) { NSLog(@"这个字符串中有\n"); } //rangeOfString 前面的參数是要被搜索的字符串,后面的是要搜索的字符 //NSNotFound