在iOS中播放嵌入式YouTube视频后返回特定视图

时间:2011-10-17 16:55:19

标签: iphone ios youtube

我正在开发的iPhone应用中播放特定视图中的YouTube视频(不是应用启动时首次显示的视图)。

一切正常:视频预览显示在我的特定视图中的网页视图中,当我点按它时,视频会全屏显示。

当视频结束时(或当我按下完成按钮时)我的应用程序显示回来,但显示第一个视图(应用程序启动时出现的视图),而不是我发布视频的视图。甚至最糟糕的是,该应用程序不响应事件(它不会崩溃,它只是没有响应)。

我试图在所有AppDelegate方法中放置一些NSLog(如果youtube插件就像离开我的应用程序然后返回一样),但没有一个被触发......

我真的不知道问题是什么......

2 个答案:

答案 0 :(得分:2)

我最终使用此处引入的语法http://apiblog.youtube.com/2010/07/new-way-to-embed-youtube-videos.html

避免了这个问题

通过这种方式,youtube播放器正确返回包含Web视图的“调用”视图。

答案 1 :(得分:0)

我遇到了同样的问题,请尝试使用此代码:

NSString* embedHTML = [NSString stringWithFormat: @"\
                       <html><head>\
                       <style type=\"text/css\">\
                       body {\
                       background-color: transparent;\
                       color: white;\
                       }\
                       </style>\
                       </head><body style=\"margin:0\">\
                       <iframe class=\"youtube-player\" type=\"text/html\" width=\"%1.0f\"\
                       height=\"%0.0f\" src=\"%@\"\
                       frameborder=\"0\">\
                       </iframe> \
                       </body></html>", theFrame.size.width, theFrame.size.height, url];

UIWebView *videoView = [[[UIWebView alloc] initWithFrame:theFrame] autorelease];
[videoView loadHTMLString:embedHTML baseURL:nil];
[scrollView addSubview:videoView];