2012-05-16 22 views
3

我從iPhone庫導入視頻在我的應用程序...但我無法做顯示,我研究了堆棧上的大量代碼,但沒有任何工作..對我來說..基本上我在FB和Twitter ... 做分享..iPhone:從iPhone庫進口視頻

-(IBAction)showVideoLibrary 
{ 
UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init]; 
videoPicker.delegate = self; 
videoPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 

videoPicker.mediaTypes =[[NSArray alloc] initWithObjects: (NSString *)kUTTypeMovie,nil];     
if(self.popoverController!=nil) 
{ 
   [self.popoverController release]; 
} 
self.popoverController  = [[UIPopoverController alloc] initWithContentViewController:videoPicker]; 
popoverController.delegate = self; 
popoverController.popoverContentSize=CGSizeMake(320,1000); 

[popoverController presentPopoverFromRect:CGRectMake(0,0,10,10) inView:self.view permittedArrowDirections:nil animated:YES]; 

} 

在此先感謝

回答

4

嘗試一個真正的iPhone設備上。 這是從我的項目中使用的iPhone庫中挑選視頻的代碼。 只需將選擇器中的視頻方法添加到所需的按鈕即可。

-(void)video 
    { 
    UIImagePickerController *imagePicker = 
    [[UIImagePickerController alloc] init]; 
    imagePicker.delegate = self; 
    imagePicker.sourceType = 
    UIImagePickerControllerSourceTypePhotoLibrary; 


    imagePicker.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeMovie, nil]; 

    [self presentModalViewController:imagePicker animated:YES]; 


    } 


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


    NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType]; 

    if (CFStringCompare ((__bridge CFStringRef) mediaType, kUTTypeMovie, 0) 
    == kCFCompareEqualTo) 
    { 

    NSString *moviePath = [[info objectForKey:UIImagePickerControllerMediaURL] path]; 

     NSURL *videoUrl=(NSURL*)[info objectForKey:UIImagePickerControllerMediaURL]; 
    // NSLog(@"%@",moviePath); 

    if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (moviePath)) { 
    UISaveVideoAtPathToSavedPhotosAlbum (moviePath, nil, nil, nil); 
    } 
    } 


    [self dismissModalViewControllerAnimated:YES]; 

    [picker release]; 


    } 

不要忘記添加移動核心服務框架,並導入

#import <MobileCoreServices/UTCoreTypes.h> 

字符串「moviepath」讓你在iPhone上的視頻的路徑則與該視頻 執行任何需要的東西你會得到視頻路徑壓縮完成後在串電影路徑enter code here

MPMoviePlayerController *player =[[MPMoviePlayerController alloc] initWithContentURL: url]; // give here the "videourl" 
[[player view] setFrame: [self.view bounds]]; 
[self.view addSubview: [player view]]; 
[player play];