【问题标题】:Programmatically force a UIWebView to go to full screen mode以编程方式强制 UIWebView 进入全屏模式
【发布时间】:2014-02-01 19:30:52
【问题描述】:

在 UIWebview(例如 youtube)中播放媒体文件时

有一个按钮可以“全屏”播放 html5 媒体播放器 - 我该怎么做

  • 知道播放器何时进入全屏
  • 强制 HTML5 播放器进入全屏模式

【问题讨论】:

    标签: ios uiwebview youtube-api nsnotificationcenter youtube-javascript-api


    【解决方案1】:

    下面是如何强制webview 全屏退出视频播放:

    [_webView reload];
    

    它不干净,它还会停止视频播放。但我认为这是退出视频全屏播放的唯一方法。

    【讨论】:

    • 您好先生,我想制作一个应用程序,如果用户将在 youtube 上观看视频,那么将启用下载按钮来下载视频。您可以指导我吗?我正在 swift 2.3 中制作该应用程序
    【解决方案2】:

    要强制视频始终全屏播放,请在配置 UIWebView 时使用以下代码:

    webView.allowsInlineMediaPlayback = NO;
    

    看起来detect entering and leaving fullscreen 有几种方法,尽管这些似乎不是推荐的方法。请参阅链接的 StackOverflow 问题。

    根据您要执行的操作,您似乎最好使用onStateChange 回调来检测播放器状态更改。在我正在进行的一个项目中,代码如下所示:

            function onStateChange(event) {
            window.location.href = 'ytplayer://onStateChange?data=' + event.data;
        }
    

    然后我在控制器或视图包装类中嗅探这个 URL:

    - (BOOL)webView:(UIWebView *)webView
    shouldStartLoadWithRequest:(NSURLRequest *)request
                navigationType:(UIWebViewNavigationType)navigationType {
    if([request.URL.scheme isEqualToString:@"ytplayer"]) {
        NSString *action = request.URL.host;
    

    【讨论】:

      猜你喜欢
      • 2015-08-29
      • 2011-07-02
      • 2010-09-18
      • 1970-01-01
      • 2011-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多