2016-06-29 15 views

答えて

0

あなたは、たとえば、デリゲートWKNavigationDelegateを実装した機能decidePolicyForNavigationActionを定義する必要があります。ビデオのリンクはパスでMP4またはパスを検出またはしたい他のいくつかの拡張子を持つ場合

class ViewController: UIViewController, WKNavigationDelegate { 
... 

override func viewWillAppear(animated: Bool) { 
    super.viewWillAppear(animated) 
    webView = WKWebView(frame: CGRect(x: 0, y: 50, width: 100, height: 100)) 
    webView.navigationDelegate = self 
    webView.loadRequest(NSURLRequest(URL: NSURL(string: "https://www.example.com")!)) 
    view.addSubview(webView) 
} 

func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void) { 
    let path = navigationAction.request.URL?.absoluteString 
    if let path = path { 
     if path.rangeOfString("mp4") != nil { 
      // This is video link, don't let iOS open video 
      decisionHandler(.Cancel) 
      print("Process video \(path)") 
      return 
     } 
    } 
    // Any other link should be handled by WKWebView 
    decisionHandler(.Allow) 
} 

を検出し、対処それはあなた自身で。

+0

ウェブサイトでは独自のビデオプレーヤーを使用していますので、フルスクリーンで押さないと、小さなスクリーンで見ることができます。あなたが私に与えた機能は残念です –

関連する問題