Ios iPhone-通过UIWebView播放Youtube视频
更新 我已经上传到github,链接是 要求是:Ios iPhone-通过UIWebView播放Youtube视频,ios,iframe,uiwebview,embed,mpmovieplayercontroller,Ios,Iframe,Uiwebview,Embed,Mpmovieplayercontroller,更新 我已经上传到github,链接是 要求是: 应用程序(基于tabviewcontroller)不会旋转 嵌入的youtube视频应以纵向模式进入全屏 全屏视频可以旋转(纵向和横向) 大家好,我有两个代码块将youtube视频嵌入uiwebview,我注意到效果不同。他们不都是MPMoviePlayerController吗?为什么会有差异 代码1:视频在纵向全屏模式下开始,旋转受到viewcontroller的限制(如果viewcontroller无法执行此操作,则无法重新录制视频) -
大家好,我有两个代码块将youtube视频嵌入uiwebview,我注意到效果不同。他们不都是MPMoviePlayerController吗?为什么会有差异 代码1:视频在纵向全屏模式下开始,旋转受到viewcontroller的限制(如果viewcontroller无法执行此操作,则无法重新录制视频)
-(void)addYouTubeVideoWebView:(NSString*)url框架:(CGRect)框架
{
//iframe
url=@“http://www.youtube.com/embed/IQGhq0IlVok";
NSString*embedHTML=@”\
\
\
//这里是rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
\
\
\
";
NSString*html=[NSString stringWithFormat:embedHTML,url,frame.size.width,frame.size.height];
UIWebView*webView=[[UIWebView alloc]initWithFrame:frame];
[webView loadHTMLString:html baseURL:nil];
[self.view addSubview:webView];
}
代码2:从横向全屏开始,可自行旋转到任何方向
- (void)addYouTubeVideoWebView:(NSString*)url frame:(CGRect)frame
{
// embed
url = @"http://www.youtube.com/watch?v=IQGhq0IlVok";
NSString* embedHTML = @"\
<html>\
<body style=\"margin:0\">\
// HERERRRRRRRRRRRRRRRRRRRRRRRRRR
<embed type=\"application/x-shockwave-flash\" src=\"%@\" width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body>\
</html>\
";
NSString* html = [NSString stringWithFormat:embedHTML, url, frame.size.width, frame.size.height];
UIWebView * webView = [[UIWebView alloc] initWithFrame:frame];
[webView loadHTMLString:html baseURL:nil];
[self.view addSubview:webView];
}
-(void)addYouTubeVideoWebView:(NSString*)url框架:(CGRect)框架
{
//嵌入
url=@“http://www.youtube.com/watch?v=IQGhq0IlVok";
NSString*embedHTML=@”\
\
\
//这里是rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
\
\
\
";
NSString*html=[NSString stringWithFormat:embedHTML,url,frame.size.width,frame.size.height];
UIWebView*webView=[[UIWebView alloc]initWithFrame:frame];
[webView loadHTMLString:html baseURL:nil];
[self.view addSubview:webView];
}
使用iframe将HTML文档嵌入到HTML文档中。但由于您的iframe不包含有效的HTML文档(仅包含URL),我猜测浏览器没有足够的iframe信息,无法决定是否可以在横向播放(为什么会这样,我不知道,这只是猜测)
- 尝试为iframe或设置宽度和高度
- 尝试在iframe版本中使用嵌入版本的完整HTML代码:
<html>\ <body style='margin:0'>\ <iframe width'%0.0f' height='%0.0f' frameborder='0'> <html>\ <body style='margin:0'>\ <embed type='application/x-shockwave-flash' src='%@' width='%0.0f' height='%0.0f'></embed>\ </body>\ </html>\ </iframe>\ </body>\ </html>\";
\ \ \ \ \ \ \ \ \ \";
<html>\
<body style='margin:0'>\
<iframe width'%0.0f' height='%0.0f' frameborder='0'>
<html>\
<body style='margin:0'>\
<embed type='application/x-shockwave-flash' src='%@' width='%0.0f' height='%0.0f'></embed>\
</body>\
</html>\
</iframe>\
</body>\
</html>\";