1 - (IBAction)openCamera:(id)sender 2 { 3 //UIImagePickerController 类方法,判断源是否可用 UIImagePickerController是一个图片挑选控制器 可以通过三种途径挑选图片。Camera、PhotoLibrary、SavedPhotoAlbum 4 BOOL hasCamera = [UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera];//判断照相机是否可用(是否有摄像头) 5 if(hasCamera == YES) 6 { 7 UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 8 picker.sourceType = UIImagePickerControllerSourceTypeCamera; 9 picker.delegate = self; 10 picker.allowsEditing = YES; //是否可编辑 11 [self presentModalViewController:picker animated:YES]; 12 [picker release]; 13 } 14 else 15 { 16 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"你没有摄像头" delegate:nil cancelButtonTitle:@"ok!" otherButtonTitles:nil]; 17 [alert show]; 18 [alert release]; 19 } 20 21 }
1 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 2 { 3 NSLog(@"%@",info); 4 // { 5 // UIImagePickerControllerCropRect = "NSRect: {{-1, 320}, {1937, 1937}}"; 6 // UIImagePickerControllerEditedImage = "<UIImage: 0x196bd0>"; 7 // UIImagePickerControllerMediaMetadata = { 8 // DPIHeight = 72; 9 // DPIWidth = 72; 10 // Orientation = 6; 11 // "{Exif}" = { 12 // ApertureValue = "2.970853654340484"; 13 // BrightnessValue = "2.246098001053075"; 14 // ColorSpace = 1; 15 // DateTimeDigitized = "2012:09:20 11:47:12"; 16 // DateTimeOriginal = "2012:09:20 11:47:12"; 17 // ExposureMode = 0; 18 // ExposureProgram = 2; 19 // ExposureTime = "0.06666666666666667"; 20 // FNumber = "2.8"; 21 // Flash = 24; 22 // FocalLength = "3.85"; 23 // ISOSpeedRatings = ( 24 // 125 25 // ); 26 // MeteringMode = 5; 27 // PixelXDimension = 2592; 28 // PixelYDimension = 1936; 29 // SceneType = 1; 30 // SensingMethod = 2; 31 // Sharpness = 2; 32 // ShutterSpeedValue = "3.911199862602335"; 33 // SubjectArea = ( 34 // 1295, 35 // 967, 36 // 699, 37 // 696 38 // ); 39 // WhiteBalance = 0; 40 // }; 41 // "{TIFF}" = { 42 // DateTime = "2012:09:20 11:47:12"; 43 // Make = Apple; 44 // Model = "iPhone 4"; 45 // Software = "5.1.1"; 46 // XResolution = 72; 47 // YResolution = 72; 48 // }; 49 // }; 50 // UIImagePickerControllerMediaType = "public.image"; 51 // UIImagePickerControllerOriginalImage = "<UIImage: 0x18bb30>"; 52 // } 53 UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; 54 imgV.image = image; 55 56 //如果想把某个UIImage对象存储到默认相册,使用下面代码 57 //UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil); 58 59 60 [self dismissModalViewControllerAnimated:YES]; 61 62 } 63 64 - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker 65 { 66 [self dismissModalViewControllerAnimated:YES]; 67 } 68 69 - (IBAction)openPhotoLibrary:(id)sender //相册列表 70 { 71 UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 72 picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 73 picker.delegate = self; 74 picker.allowsEditing = YES; //是否可编辑 75 [self presentModalViewController:picker animated:YES]; 76 [picker release]; 77 } 78 79 - (IBAction)openSavedPhotoAlbum:(id)sender //默认相册 80 { 81 UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 82 picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; 83 picker.delegate = self; 84 picker.allowsEditing = YES; //是否可编辑 85 [self presentModalViewController:picker animated:YES]; 86 [picker release]; 87 88 }