ios中如何拍照,录制视频,选择照片

来源:互联网 发布:有声朗读软件ios 编辑:程序博客网 时间:2024/05/04 20:18

主要涉及到UIImagePickerController,该类要遵守 UIImagePickerControllerDelegate,UINavigationControllerDelegate这两个协议。

1拍照

-(void)takePicture

{

    if ([UIImagePickerControllerisSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])

    {

        UIImagePickerController *picker = [[UIImagePickerControlleralloc] init];

        picker.delegate = self;

        picker.sourceType =UIImagePickerControllerSourceTypeCamera;

        [selfpresentViewController:picker animated:YEScompletion:NULL];

    }


}

2录像

-(void)takeVideo

{

    UIImagePickerController *Videopicker = [[UIImagePickerControlleralloc] init];

    Videopicker.delegate = self;

    [Videopicker setEditing:NO];

    

    if ([UIImagePickerControllerisSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])

    {

        Videopicker.sourceType =UIImagePickerControllerSourceTypeCamera;

        NSArray *sourceTypes = [UIImagePickerControlleravailableMediaTypesForSourceType:Videopicker.sourceType];

        for (NSString *strin sourceTypes) {

            if ([str hasSuffix:@"movie"]) {

                Videopicker.mediaTypes = [[NSArrayalloc] initWithObjects: str, nil];

                break;

            }

        }

        [selfpresentViewController:Videopicker animated:YEScompletion:nil];

    }

}


3既拍照又录像

-(void)takePhotoAndVideo

{

    NSArray *mediaTypes = [UIImagePickerControlleravailableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];

    if([mediaTypes containsObject:@"public.movie"]){

        UIImagePickerController *imagePickerController=[[UIImagePickerControlleralloc] init];

        imagePickerController.mediaTypes =  [UIImagePickerControlleravailableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];

        imagePickerController.sourceType=UIImagePickerControllerSourceTypeCamera;

        imagePickerController.videoQuality =UIImagePickerControllerQualityTypeMedium;

        imagePickerController.delegate = self;

        [selfpresentViewController:imagePickerController animated:YEScompletion:nil];

    }

}


4选中照片

-(void)choosePhoto

{

    if ([UIImagePickerControllerisSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])

    {

        UIImagePickerController *picker = [[UIImagePickerControlleralloc] init];

        picker.delegate = self;

        picker.sourceType =UIImagePickerControllerSourceTypeCamera;

        [selfpresentViewController:picker animated:YEScompletion:NULL];

    }


}


5获取图片的资源主要靠实现协议的

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

{


}


6取消

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker

{


}


0 0
原创粉丝点击