【问题标题】:Embedded YouTube Video in Landscape横向嵌入 YouTube 视频
【发布时间】:2026-01-26 09:55:02
【问题描述】:

我的应用中有一个嵌入的 YouTube 视频。整个应用程序被锁定为仅以纵向运行,但是一旦用户点击缩略图上的播放按钮,我希望视频以横向播放。这是嵌入式 YouTube 视频的代码。

//
//  YouTubeView.h
//  KFBNewsroom
//
//  Created by KFB on 11/8/12.
//  Copyright (c) 2012 com.kfb. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface YouTubeView : UIViewController
{
    IBOutlet UIWebView *thumbnailView;
}
@property (nonatomic, retain) IBOutlet UIWebView *thumbnailView;

@end






//
//  YouTubeView.m
//  KFBNewsroom
//
//  Created by KFB on 11/8/12.
//  Copyright (c) 2012 com.kfb. All rights reserved.
//

#import "YouTubeView.h"

@interface YouTubeView ()

@end

@implementation YouTubeView
@synthesize thumbnailView;

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.title = @"Monthly Video";
    // Do any additional setup after loading the view from its nib.
    // webView is a UIWebView, either initialized programmatically or loaded as part of a xib.

    NSString *htmlString = @"<html><head><meta name = \"viewport\" content = \"initial-scale = 1.0, user-scalable = no, width = 280\"/></head><body style=\"background:#F00;margin-top:0px;margin-left:0px\"><div><object width=\"280\" height=\"218\"><param name=\"movie\" value=\"http://www.youtube.com/embed/videoseries?list=PL0B9BF37A24840E28&amp;hl=en_US""></param><param name=\"wmode\" value=\"transparent\"></param><embed src=\"http://www.youtube.com/embed/videoseries?list=PL0B9BF37A24840E28&amp;hl=en_US""type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"280\" height=\"218\"></embed></object></div></body></html>";

    [thumbnailView loadHTMLString:htmlString baseURL:[NSURL URLWithString:@"http://www.youtube.com/playlist?list=PL0B9BF37A24840E28&feature=plcp"]];

}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

【问题讨论】:

  • 我还没有弄清楚。让我知道你是否可以使用它。

标签: objective-c ios youtube youtube-api


【解决方案1】:

要接收设备旋转的通知,您需要将项目配置设置为也使用横向模式。然后,如果您有 UIViewController 类,则需要实现旋转以忽略除纵向之外的所有内容。在您拥有视频的控制器中,您只需覆盖它以接受横向。

【讨论】: