WebViewでlinkタップ時にブラウザに飛ばないようにする
WebViewでlinkやボタンをタップすると,何もしていない場合だとWebViewからデフォルトのブラウザに飛ばされます.今回はWebViewからブラウザに飛ばすのではなく,WebView内で完結させたかったので,そのやり方を調べました.
やり方は簡単で以下でできるようです.
webView.setWebViewClient(object : WebViewClient() { override fun shouldOverrideUrlLoading(view: WebView?, request: WebResourceRequest?): Boolean { return false } })
WebViewClient | Android Developers
shouldOverrideUrlLoadingはWebViewで新しいurlに対してloadingが走ったときに呼ばれるメソッドです.ブラウザに飛ばないようにするためにはWebViewに設定するWebViewClientでshouldOverrideUrlLoadingでfalseを返してあげればいいです.