2016-06-29 4 views

ответ

0

Вы должны осуществлять делегат WKNavigationDelegate и определить функцию decidePolicyForNavigationAction, например:

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) 
} 

Detect, если видеосвязь имеет mp4 в пути или другого расширения вы хотите, чтобы обнаружить или путь, а затем обрабатывать это самостоятельно.

+0

Сайт использует свой собственный видеоплеер, поэтому, если я не нажимаю на полноэкранный режим, я могу смотреть на маленьком экране, который вы мне дали, не работает –

Смежные вопросы