1、導(dǎo)入框架#import ->UIImagePickerController
2赞弥、先區(qū)分選擇攝像頭毅整、相冊(cè)sourceType
(1)UIImagePickerControllerSourceTypePhotoLibrary攝像頭
(2)UIImagePickerControllerSourceTypeCamera相冊(cè)
(3)UIImagePickerControllerSourceTypeSavedPhotosAlbum相冊(cè)
3、再區(qū)分錄像與拍照cameraCaptureMode:
(0)設(shè)置錄像->要先選擇媒體的類型默認(rèn)拍照不崩潰因?yàn)槟J(rèn)設(shè)置媒體類型是kUTTypeImage※※※※※※不然會(huì)崩潰
(1)錄像:UIImagePickerControllerCameraCaptureModeVideo
(2)拍照:UIImagePickerControllerCameraCaptureModePhoto
4绽左、區(qū)分前后攝像頭cameraDevice
(1)UIImagePickerControllerCameraDeviceRear前攝像頭
(2)UIImagePickerControllerCameraDeviceFront后攝像頭
5悼嫉、選擇媒體類型mediaTypes
(1)選擇媒體類型默認(rèn)kUTTypeImage
(2)kUTTypeImage包含在框架->#import
(3)需要的內(nèi)容不是OC里面的字符串類型需要強(qiáng)制轉(zhuǎn)換
(4)錄制視頻->類型要選擇kUTTypeMovie它里面包含了audio和vidio
6、設(shè)置是否顯示控制控件showsCameraControls
7拼窥、設(shè)置拍照takePicture
8戏蔑、錄像startVideoCapture、stopVideoCapture
9鲁纠、設(shè)置視頻清晰度videoQu
(1)UIImagePickerControllerQualityTypeHigh
(2)UIImagePickerControllerQualityTypeMedium
(3)UIImagePickerControllerQualityTypeLow
(4)UIImagePickerControllerQualityType640x480
(5)UIImagePickerControllerQualityTypeIFrame1280x720
(6)UIImagePickerControllerQualityTypeIFrame960x540
10总棵、設(shè)置視頻最大的錄像時(shí)間videoMaximumDuration
11、設(shè)置閃光cameraFlashMode
(1)UIImagePickerControllerCameraFlashModeOff關(guān)閉
(2)UIImagePickerControllerCameraFlashModeAuto自動(dòng)-默認(rèn)
(3)UIImagePickerControllerCameraFlashModeOn開啟
12改含、設(shè)置調(diào)用攝像頭視頻頁(yè)面的覆蓋視圖cameraOverlayView
13情龄、設(shè)置拍照頁(yè)面的形態(tài)cameraViewTransform
14、代理delegate需要導(dǎo)入兩個(gè)代理
方法:
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info;采集完成之后調(diào)用捍壤、不區(qū)分?jǐn)z像拍照
- (void)imagePickerControllerDidCancel:(UIImagePickerController
*)picker;采集取消的時(shí)候調(diào)用
15骤视、(1)把圖片保存到相冊(cè)
UIImageWriteToSavedPhotosAlbum(finishImage,
self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
(2)保存成功的回調(diào)方法
- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error
contextInfo:(void *)contextInfo{
NSLog(@"圖片保存成功");
}
16、(1)保存視頻到相冊(cè)
NSString *path = (NSString *)[info[UIImagePickerControllerMediaURL] path];
UISaveVideoAtPathToSavedPhotosAlbum(path,
self, @selector(video:didFinishSavingWithError:contextInfo:), nil);
(2)視頻保存到相冊(cè)之后調(diào)用
- (void)video:(NSString *)videoPath didFinishSavingWithError:(NSError *)error
contextInfo:(void *)contextInfo{
}
17鹃觉、(1)JPEG格式圖片轉(zhuǎn)換成NSData
NSData *imageData = UIImageJPEGRepresentation(finishImage, 0.1);
(2)PNG格式圖片轉(zhuǎn)換成NSData
NSData *imageData1 = UIImagePNGRepresentation(finishImage);