1

현재 NSURL을 얻으려면 아래 코드를 사용합니다. 하지만 NSURL을 얻은 후에 어떻게 할 수 있습니까?UIImagePickerController에서 비디오를 선택하고 재생하려면 어떻게해야합니까?

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
     { 
      NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType]; 
      if ([mediaType isEqualToString:@"public.image"]){ 
       // UIImage *selectedImage = [info objectForKey:UIImagePickerControllerOriginalImage]; 
       UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; 
       NSLog(@"found an image"); 
      } 
      else if ([mediaType isEqualToString:@"public.movie"]){ 
       NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL]; 
       NSLog([videoURL absoluteString]); 
       NSLog(@"found a video");  
      } 
      [picker dismissModalViewControllerAnimated:YES]; 
     } 
+0

사람이 알고있다? – bengan

답변

4
- (void)selectVideoFromLibrary 
{ 
    UIImagePickerController *imagePicker = 
     [[UIImagePickerController alloc] init]; 
     imagePicker.delegate = self; 
     imagePicker.sourceType = 
     UIImagePickerControllerSourceTypeSavedPhotosAlbum; 
     imagePicker.mediaTypes = [NSArray arrayWithObjects: 
            (NSString *) kUTTypeMovie, 
            nil]; 
     imagePicker.allowsEditing = NO; 
     [self presentViewController:imagePicker animated:YES completion:nil]; 

} 

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    NSURL *movieURL = (NSURL*)[info objectForKey:UIImagePickerControllerMediaURL]; 
    MPMoviePlayerController *movieplayer =[[MPMoviePlayerController alloc] initWithContentURL: url];  
    [[movieplayer view] setFrame: [self.view bounds]]; 
    [self.view addSubview: [movieplayer view]]; 
    [movieplayer play]; 
} 
+0

'Android'를위한 어떤 해결책? –

+0

https://stackoverflow.com/questions/2507898/how-to-pick-an-image-from-gallery-sd-card-for-my-app – Amitabha

2

URL은 동영상 URL

MPMoviePlayerController *plyr =[[MPMoviePlayerController alloc] initWithContentURL: url];  
[[plyr view] setFrame: [self.view bounds]]; 
[self.view addSubview: [plyr view]]; 
[plyr play]; 
관련 문제