Objective c - ios : How to pick video from Camera Roll?

前端 未结 2 690
慢半拍i
慢半拍i 2021-01-04 08:07

I try this :

 UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init];
videoPicker.delegate = self;
videoPicker.modalPresentationStyle          


        
相关标签:
2条回答
  • 2021-01-04 08:19

    Here is a compilation and cleanup of the answer above plus a few more details.

    (0) Ensure you have these two includes.

    #import <UIKit/UIKit.h>
    #import <MobileCoreServices/MobileCoreServices.h> // needed for video types
    

    (1) Add two delegates to your .h file: UINavigationControllerDelegate and UIImagePickerControllerDelegate. For us, it looked like this:

    @interface ATHViewController () <UITabBarDelegate, UINavigationControllerDelegate,UIImagePickerControllerDelegate>
    

    (2) Present the user with choice of videos from their library. Add this code to your .m file somewhere.

        // Present videos from which to choose
        UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init];
        videoPicker.delegate = self; // ensure you set the delegate so when a video is chosen the right method can be called
    
        videoPicker.modalPresentationStyle = UIModalPresentationCurrentContext;
        // This code ensures only videos are shown to the end user
        videoPicker.mediaTypes = @[(NSString*)kUTTypeMovie, (NSString*)kUTTypeAVIMovie, (NSString*)kUTTypeVideo, (NSString*)kUTTypeMPEG4];
    
        videoPicker.videoQuality = UIImagePickerControllerQualityTypeHigh;
        [self presentViewController:videoPicker animated:YES completion:nil];
    

    (3) Handle the responses from the picker. Add this code to your delegate class.

    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    
        // This is the NSURL of the video object
        NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
    
        NSLog(@"VideoURL = %@", videoURL);
        [picker dismissViewControllerAnimated:YES completion:NULL];
    }
    

    (4) Handle when the user cancels choosing anything.

    - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
        [picker dismissViewControllerAnimated:YES completion:NULL];
    }
    
    0 讨论(0)
  • 2021-01-04 08:33

    Please use the following code to select video from iOS gallery

    UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init];
    videoPicker.delegate = self;
    videoPicker.modalPresentationStyle = UIModalPresentationCurrentContext;
    videoPicker.mediaTypes =[UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary];‌​
    videoPicker.mediaTypes = @[(NSString*)kUTTypeMovie, (NSString*)kUTTypeAVIMovie, (NSString*)kUTTypeVideo, (NSString*)kUTTypeMPEG4];
    videoPicker.videoQuality = UIImagePickerControllerQualityTypeHigh;
    [self presentViewController:videoPicker animated:YES completion:nil];
    

    Please have a look at this link Select video from gallery

    0 讨论(0)
提交回复
热议问题