Androidアプリにウェブビューがありますが、誰かがサイト内を移動すると、新しいウィンドウで開きます。ウェブビュー内にとどまりたいです。これを行う方法はありますか?簡単に?これが私のアクティビティのコードです:
super.onCreate(savedInstanceState);
setContentView(R.layout.shop);
WebView webview;
webview = (WebView) findViewById(R.id.webview);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://www.google.co.uk");
WebViewClient
を作成する必要があります:
public class myWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
次に、次のようにWebView
に設定します。
webview.setWebViewClient(new myWebViewClient());
または、新しいクラスを作成せずに、それを行うことができます。
myWebView.setWebViewClient(new WebViewClient());
わたしにはできる。
_webview.setWebViewClient(new WebViewClient());
_
カスタマイズしたい場合は、shouldOverrideUrlLoading (WebView view, String url)
をオーバーライドする必要があります。ただし、API24では非推奨です。public boolean shouldOverrideUrlLoading (WebView view,WebResourceRequest request)
を使用できます。実際には、両方ともfalseを返す必要があります。