我搜索并阅读了很多帖子,但无法弄清楚如何在我的代码中执行此操作.
我想在我的应用程序中使用地理位置,需要在webChromeClient中查看而不是我现在用于html文件的webViewClient,并且链接确实保留在同一视图中.
当我将其更改为webChromeClient时,html链接<a href="http://url/file.php?q=123"会突然在浏览器中打开!
我怎么能阻止这个?
myWebView = new WebView(this);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.getSettings().setLoadWithOverviewMode(true);
myWebView.getSettings().setUseWideViewPort(true);
myWebView.getSettings().setGeolocationEnabled(true);
myWebView.setWebChromeClient(new WebChromeClient() {
public void onGeolocationPermissionsShowPrompt(String origin, android.webkit.GeolocationPermissions.Callback callback) {
callback.invoke(origin, true, false); }
});
myWebView.loadUrl("file:///android_asset/HTML/index.html");
setContentView(myWebView);
Run Code Online (Sandbox Code Playgroud) 如何在将数据加载到我的webview中时显示进度条?我的代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_PROGRESS);
getWindow().setFeatureInt( Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
this.setProgressBarVisibility(true);
setContentView(R.layout.layout_article);
WebView webview = (WebView) findViewById(R.id.webView);
final Activity activity = this;
webview.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
activity.setProgress(progress * 100);
}
});
webView.loadUrl("http://google.com");
}
Run Code Online (Sandbox Code Playgroud)