首页 > 解决方案 > 为什么 WkWebView 不在线播放?

问题描述

我正在开发一个iOS应用程序,出于某种原因,视频(嵌入在网站的页面中)没有playinline。我不得不提一下,iPhone's safari视频是按顺序播放的。它不会全屏打开。仅在WkWebView.

标签: swiftxcode

解决方案


你可以试试 SFSafariViewController。

import UIKit
import SafariServices

class ViewController: UIViewController, SFSafariViewControllerDelegate {

    override func viewDidAppear(_ animated: Bool) {

        if let url = URL(string: "https://example.com") {
            let vc = SFSafariViewController(url: url)
            vc.delegate = self
            self.present(vc, animated: true) {
                // Include this code below to 'hide' the toolbar.
                var frame = vc.view.frame
                // If you want it to go under the safe area header bar:
                let window = UIApplication.shared.keyWindow
                let topPadding = window?.safeAreaInsets.top
                let OffsetY: CGFloat  = 64 + topPadding
                frame.origin = CGPoint(x: frame.origin.x, y: frame.origin.y - OffsetY)
                frame.size = CGSize(width: frame.width, height: frame.height + OffsetY)

                safariViewController.view.frame = frame
            }
        }
    }
}

来自一个关于使用 WKWebView 正确渲染浏览器但在 Safari 中工作正常的切题问题。

编辑:包含隐藏工具栏的代码。


推荐阅读