我用WebView属性创建了一个Android应用程序,一切都很好,但唯一的问题是,当我点击该WebView中的任何链接时,它会自动转到默认的Web浏览器。但我想在我的应用程序Web视图中打开链接。这是我的代码:
mWebView = (WebView) findViewById(R.id.activity_main_webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.loadUrl("http://plan.regenbogen-gesamtschule.de/vertretung/schueler/subst_001.htm");
mWebView.setWebViewClient(new MyAppWebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
//hide loading image
findViewById(R.id.progressBar1).setVisibility(View.GONE);
//show webview
findViewById(R.id.activity_main_webview).setVisibility(View.VISIBLE);
}});
答案 0 :(得分:2)
如果您覆盖shouldOverrideUrlLoading(...)
中的MyAppWebViewClient
并返回false
,您的网页浏览应自动尝试加载网址。文档说明如下:
返回:如果主机应用程序想要离开当前的WebView并处理URL本身,则返回true,否则返回false。
请参阅shouldOverrideUrlLoading(...)文档。
mWebView.setWebViewClient(new MyAppWebViewClient(){
@Override
boolean shouldOverrideUrlLoading (WebView view, String url) {
return false;
}
@Override
public void onPageFinished(WebView view, String url) {
//hide loading image
findViewById(R.id.progressBar1).setVisibility(View.GONE);
//show webview
findViewById(R.id.activity_main_webview).setVisibility(View.VISIBLE);
}});