0

在我的应用程序中,我从 UITableview 中的服务器获取视频链接。所有这些链接都存储在 Textfile 中的服务器上,我从服务器中获取所有这些链接,并将每个链接分配给 UITableview 中的单元格。所有这些我都成功完成但我想要当我单击 UITableview 中的任何单元格时,它会在下一个视图中播放视频。这是我的代码。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     nextview *dvController = [[nextview alloc] initWithNibName:@"nextview" bundle:nil];
     [self presentModalViewController:dvController animated:YES];
     strFile = [Listdata objectAtIndex:indexPath.row];
     NSLog(@"test=%@",strFile);
     [dvController release];
  }

在下一个视图中,我将存储在“strFile”中的链接分配给 MPMoviePlayerController,这是我的代码。

-(void)viewDidAppear:(BOOL)animated
 {
 NSLog(@"mytest=%@",strFile);
 NSURL *url = [NSURL URLWithString:strFile];
 NSLog(@"myurl=%@",url);
 myplayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
 myplayer.view.frame = CGRectMake(0, 0,900, 700);  
 [self.view addSubview:myplayer.view];
 [myplayer play];
 }

在 NSlog 中,我看到了链接,但它没有在 MPMoviePlayerController 中播放。任何人都可以提前指导我犯了什么错误。thanx。

4

3 回答 3

2

@prince:你能告诉我你在 NSLog 中得到了什么网址吗?我认为你在获取 url 时弄错了。

我们可以通过

url = [NSURL fileURLWithPath:strUrl];

别的

url = [NSURL URLWithString:strUrl];

试一试。

于 2012-06-06T08:37:47.367 回答
1

您可能不应该设置框架并添加到子视图中,您可能会对MPMoviePlayerViewController. 试试这个...

-(void)viewDidAppear:(BOOL)animated {
 NSLog(@"mytest=%@",strFile);
 NSURL *url = [NSURL URLWithString:strFile];
 NSLog(@"myurl=%@",url);
 myplayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
 myplayer.scalingMode = MPMovieScalingModeAspectFill;
 [myplayer play];
 }

编辑忽略我的代码,您不能直接在 MPMoviePlayerController 中播放 YouTube 视频。检查这篇文章,而不是使用 MPMoviePlayerController 而不是 UIWebView 播放 YouTube 视频

于 2012-06-06T08:37:50.697 回答
0

在应用程序内播放 youtube 视频是使用 Youtube 的 embed 标签创建一个 UIWebView,用于您想要作为 UIWebView 的内容播放的电影。UIWebView 将检测到嵌入的对象是一个 Youtube 链接,并且 web 视图的内容将是视频的 youtube 预览。当您的用户单击预览时,视频将显示在 MPMoviePlayerController 中。试试这个链接:

http://iphoneincubator.com/blog/audio-video/how-to-play-youtube-videos-within-an-application

不幸的是,无法使用 MPMoviePlayerController 直接播放 youtube 视频,因为 youtube 不会公开指向视频文件的直接链接。

于 2012-06-06T09:31:36.117 回答