質問: 環境 --- * swift3 * xcode 8.2 概要 --- WebViewで動画コンテンツを再生するアプリケーションを作成しています。WKWebViewを使用しています。 アプリケーションのTOP画面からWebView画面に遷移し、Webページ内の動画コンテンツを再生しています。 動画コンテンツはvideoタグで再生しています。 Webサイトは外部のものなので編集したりすることはできません。 問題 --- 動画コンテンツをフルスクリーンで再生するときに、 時間経過によりUIAlertControllerでアラートを生成し、表示しようとしています。 しかし、フルスクリーン時にはアラートが動画の背面に表示され、 フルスクリーンモードを解除して初めて確認することができます。 フルスクリーンで再生しないとき(インライン再生時)は動画の前にアラートが表示されます。 調べたこと ------ アラート表示時にフルスクリーンモードを強制的に解除する方法や、 アラート画面を最前面に表示する方法などを考えましたが、 思い通りの動きは実現できませんでした。 そもそもvideoタグを制御(フルスクリーンや、再生、停止)したり WKWebVideでフルスクリーン再生中の動画より前にアラートを表示したりすることは可能なのでしょうか。 お詳しい方ご教授のほど、よろしくお願いいたします。
回答: javascriptでフルスクリーンを解除することができ解決しました。 ``` self.webView.evaluateJavaScript("var v = document.getElementById('vplayer');v.pause();v.webkitExitFullscreen()", completionHandler: nil) ``` アラートですがそのままでは、javascriptのアラートを表示できないのでWKUIDelegateで設定しようと思いましたが、javascriptは使用せずに`UIAlertController`を使用しました。 参考:http://qiita.com/furu8ma/items/183f85a106ba827ad0ea