Android-приложение для Android в приложении
У меня есть веб-просмотр в приложении для Android, но когда кто-то перемещается по сайту, он открывается в новом окне, я хочу, чтобы он оставался внутри webview. Есть ли способ сделать это легко? Вот код в моей деятельности:
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");
Ответы
Ответ 1
Вам нужно создать WebViewClient
:
public class myWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
И затем установите его в WebView
следующим образом:
webview.setWebViewClient(new myWebViewClient());
Ответ 2
Или вы можете просто сделать это, не создавая новый класс:
myWebView.setWebViewClient(new WebViewClient());
Это работает для меня.
Ответ 3
webview.setWebViewClient(new WebViewClient());
Если вы хотите выполнить настройку, вам следует переопределить shouldOverrideUrlLoading (WebView view, String url)
. но это не рекомендуется в API 24. Вы можете использовать public boolean shouldOverrideUrlLoading (WebView view,WebResourceRequest request)
. на самом деле им обоим нужно вернуть false.
Пример Android WebView