3

私は自分のアプリでiphoneライブラリからビデオをインポートしています...しかし、スタックオーバーフローで多くのコードを勉強したことを示すことができませんが、どれも機能していません..基本的に私はfbとtwitterで共有しています.. ...。

-(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

1 に答える 1

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でのビデオのパスを示し、そのビデオで任意の操作を実行します。文字列movie pathで圧縮が行われると、ビデオパスが取得されます。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];
于 2012-05-16T10:26:19.343 に答える