ios中如何拍照,录制视频,选择照片
2014-05-06 18:27
477 查看
主要涉及到UIImagePickerController,该类要遵守 UIImagePickerControllerDelegate,UINavigationControllerDelegate这两个协议。
1拍照
-(void)takePicture
{
if ([UIImagePickerController
isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
UIImagePickerController *picker = [[UIImagePickerController
alloc] init];
picker.delegate =
self;
picker.sourceType =
UIImagePickerControllerSourceTypeCamera;
[self
presentViewController:picker animated:YES
completion:NULL];
}
}
2录像
-(void)takeVideo
{
UIImagePickerController *Videopicker = [[UIImagePickerController
alloc] init];
Videopicker.delegate =
self;
[Videopicker setEditing:NO];
if ([UIImagePickerController
isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
Videopicker.sourceType =
UIImagePickerControllerSourceTypeCamera;
NSArray *sourceTypes = [UIImagePickerController
availableMediaTypesForSourceType:Videopicker.sourceType];
for (NSString *str
in sourceTypes) {
if ([str hasSuffix:@"movie"]) {
Videopicker.mediaTypes = [[NSArray
alloc] initWithObjects: str,
nil];
break;
}
}
[self
presentViewController:Videopicker animated:YES
completion:nil];
}
}
3既拍照又录像
-(void)takePhotoAndVideo
{
NSArray *mediaTypes = [UIImagePickerController
availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
if([mediaTypes containsObject:@"public.movie"]){
UIImagePickerController *imagePickerController=[[UIImagePickerController
alloc] init];
imagePickerController.mediaTypes = [UIImagePickerController
availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
imagePickerController.sourceType=UIImagePickerControllerSourceTypeCamera;
imagePickerController.videoQuality =
UIImagePickerControllerQualityTypeMedium;
imagePickerController.delegate =
self;
[self
presentViewController:imagePickerController animated:YES
completion:nil];
}
}
4选中照片
-(void)choosePhoto
{
if ([UIImagePickerController
isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])
{
UIImagePickerController *picker = [[UIImagePickerController
alloc] init];
picker.delegate =
self;
picker.sourceType =
UIImagePickerControllerSourceTypeCamera;
[self
presentViewController:picker animated:YES
completion:NULL];
}
}
5获取图片的资源主要靠实现协议的
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
}
6取消
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
}
1拍照
-(void)takePicture
{
if ([UIImagePickerController
isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
UIImagePickerController *picker = [[UIImagePickerController
alloc] init];
picker.delegate =
self;
picker.sourceType =
UIImagePickerControllerSourceTypeCamera;
[self
presentViewController:picker animated:YES
completion:NULL];
}
}
2录像
-(void)takeVideo
{
UIImagePickerController *Videopicker = [[UIImagePickerController
alloc] init];
Videopicker.delegate =
self;
[Videopicker setEditing:NO];
if ([UIImagePickerController
isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
Videopicker.sourceType =
UIImagePickerControllerSourceTypeCamera;
NSArray *sourceTypes = [UIImagePickerController
availableMediaTypesForSourceType:Videopicker.sourceType];
for (NSString *str
in sourceTypes) {
if ([str hasSuffix:@"movie"]) {
Videopicker.mediaTypes = [[NSArray
alloc] initWithObjects: str,
nil];
break;
}
}
[self
presentViewController:Videopicker animated:YES
completion:nil];
}
}
3既拍照又录像
-(void)takePhotoAndVideo
{
NSArray *mediaTypes = [UIImagePickerController
availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
if([mediaTypes containsObject:@"public.movie"]){
UIImagePickerController *imagePickerController=[[UIImagePickerController
alloc] init];
imagePickerController.mediaTypes = [UIImagePickerController
availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
imagePickerController.sourceType=UIImagePickerControllerSourceTypeCamera;
imagePickerController.videoQuality =
UIImagePickerControllerQualityTypeMedium;
imagePickerController.delegate =
self;
[self
presentViewController:imagePickerController animated:YES
completion:nil];
}
}
4选中照片
-(void)choosePhoto
{
if ([UIImagePickerController
isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])
{
UIImagePickerController *picker = [[UIImagePickerController
alloc] init];
picker.delegate =
self;
picker.sourceType =
UIImagePickerControllerSourceTypeCamera;
[self
presentViewController:picker animated:YES
completion:NULL];
}
}
5获取图片的资源主要靠实现协议的
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
}
6取消
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
}
相关文章推荐
- iOS 选择照片、视频、拍照并压缩视频获取压缩保存后路径的方法
- iOS录制(或选择)视频,压缩、上传(整理)
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS视频录制(或选择)压缩及上传功能(整理)
- iOS开发--音频播放、录音、视频播放、拍照、视频录制(转载)
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制