我正在使用以下嵌入代码在 IOS 上嵌入我的 YouTube 视频
- (NSString*)embedYouTube:(NSString*)youtube_id frame:(CGRect)frame {
NSString* embedHTML = @"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: white;\
}\
</style>\
</head><body style=\"margin:0\">\
<iframe src=\"http://www.youtube.com/embed/%@?rel=0\" frameborder=\"0\" allowfullscreen width=\"%0.0f\" height=\"%0.0f\"></iframe>\
</body></html>";
NSString *html = [NSString stringWithFormat:embedHTML, youtube_id, frame.size.width, frame.size.height];
return html;
}
//code to embed video
NSString *contentHTML;
if (currentAnswer.youtube_id != nil) {
contentHTML = [self embedYouTube:currentAnswer.youtube_id frame:CGRectMake(CELL_TEXT_LEFT_MARGIN + CELL_AVATAR_WIDTH + CELL_SPACING, currentYAxisValue, CELL_YOUTUBEVIEW_WIDTH, CELL_YOUTUBEVIEW_HEIGHT)];
}
[webView loadHTMLString: contentHTML baseURL:nil];
当我播放视频时,它只能以纵向模式播放,不能以横向模式播放。这是由于“iframe”造成的限制吗?有什么办法可以解决这个问题吗?
最佳答案
如果您的 UIViewController 也能够旋转到横向,它应该可以工作。
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
在尝试旋转视频之前测试您的 UIViewController 是否能够旋转。如果您不希望 UIViewController 在视频不在屏幕上时能够旋转,您可以这样做:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if(webView && webView.superView) return YES;
return UIInterfaceOrientationIsPortrait(interfaceOrientation);
}
关于ios - 如何将嵌入式 youtube 视频旋转为横向模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11259176/