您的位置:首页 > 移动开发 > IOS开发

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
{

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐