3

我正在使用YTPlayerView课程来播放YouTube视频。下面是我用来根据设备屏幕尺寸加载视频的代码(iPad 大尺寸,iPhone 小尺寸)。它工作正常。

问题 - 当我将设备模式更改为横向时,我希望YTPlayerView在纵向模式下更大。目前,两种屏幕模式的视频大小相同。

- (BOOL)loadWithPlayerParams:(NSDictionary *)additionalPlayerParams {
NSDictionary *playerCallbacks = @{
                                  @"onReady" : @"onReady",
                                  @"onStateChange" : @"onStateChange",
                                  @"onPlaybackQualityChange" : @"onPlaybackQualityChange",
                                  @"onError" : @"onPlayerError"
                                  };
NSMutableDictionary *playerParams = [[NSMutableDictionary alloc] init];
[playerParams addEntriesFromDictionary:additionalPlayerParams];

if([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)
{
    [playerParams setValue:@"551px" forKey:@"height"];
    [playerParams setValue:@"768px" forKey:@"width"];
}
else
{
    [playerParams setValue:@"250px" forKey:@"height"];
    [playerParams setValue:@"320px" forKey:@"width"];
}
-----
-----
}

我不能使用此检查来查看更大的尺寸,因为上面的代码没有调用中间视频播放。

if([[UIApplication sharedApplication] statusBarOrientation] == UIInterfaceOrientationLandscape)

你们知道如何解决这个问题吗?或者,如果有任何其他解决方案使用 JavaScript 和 css 作为 webView 的 html 字符串。

4

2 回答 2

4

YTPlayerView其实是用webview来播放视频的,所以只能用css或者javascript来改变大小。Assets 文件夹中应该有一个名为“YTPlayerView-iframe-player.html”的 html 文件。

这是css示例:

<style>
    body { margin: 0; width:100%%; height:100%%; }
    html { width:100%%; height:100%%; }
</style>
于 2014-10-13T06:45:06.007 回答
0

我在故事板中使用了 YTPlayer,并且在我的项目中使用自动布局时对其进行了适当的限制。它在横向和纵向模式下对我来说都很好。我认为你的问题的解决方案是自动布局

于 2015-07-08T10:16:31.650 回答