Target = ” _blank “をAndroid WebViewでブロックする方法

Android WebViewでリンクを新しいウィンドウで開かないようにするには、WebViewClientクラスのshouldOverrideUrlLoadingメソッドでリンククリックイベントをインターセプトし、現在のWebViewでリンクを読み込みます。

まず、WebViewClientクラスのカスタムを作成する。以下を参照。

public class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
view.loadUrl(request.getUrl().toString());
return true;
}
}

次に、WebViewインスタンスにこのWebViewClientをアクティビティやフラグメントで設定します。以下を参照してください。

WebView webView = findViewById(R.id.webView);
webView.setWebViewClient(new MyWebViewClient());

そのようにすることで、ユーザーがリンクをクリックした際に、 WebView がイベントをインターセプトし、そのリンクを現在開いている WebView にロードし、新しいウィンドウで開かれることはありません。

bannerAds