ven*_*san 7 xcode uiimagepickercontroller ipad
我正在使用以下代码来显示视频库
-(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];
}
Run Code Online (Sandbox Code Playgroud)
并且为了接收所选的视频网址,我使用以下功能
- (void)imagePickerController: (UIImagePickerController *)picker2 didFinishPickingMediaWithInfo: (NSDictionary *)info {
NSString *mediaType = [info valueForKey:UIImagePickerControllerMediaType];
if([mediaType isEqualToString:@"public.movie"])
{
NSLog(@"came to video select...");
NSURL *videoUrl=(NSURL*)[info objectForKey:@"UIImagePickerControllerMediaURL"];
NSLog(@"Got Movie Url==%@",videoUrl);
}
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的代码,我可以看到视频列表存在于库中,但是当我按下"USE"按钮时,它显示压缩视频..我无法取消它,我没有得到任何类型的网址中的
- (void)imagePickerController: (UIImagePickerController *)picker2 didFinishPickingMediaWithInfo: (NSDictionary *)info
Run Code Online (Sandbox Code Playgroud)
功能..任何解决这个问题的想法..并获取应用程序的URL.
谢谢.
Din*_*hik 10
在真正的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];
}
Run Code Online (Sandbox Code Playgroud)
不要忘记添加移动核心服务框架
并导入
#import <MobileCoreServices/UTCoreTypes.h>
Run Code Online (Sandbox Code Playgroud)
字符串"moviepath"为您提供iPhone中视频的路径,然后使用该视频执行任何所需的操作.压缩完成后,您将在字符串电影路径中获得视频路径,"videourl"是该视频的网址播放该视频
MPMoviePlayerController *player =[[MPMoviePlayerController alloc] initWithContentURL: url]; // give here the "videourl"
[[player view] setFrame: [self.view bounds]];
[self.view addSubview: [player view]];
[player play];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10226 次 |
最近记录: |