webView简单用法: 1.打开一个网页
mContentWedView.loadUrl("http://www.baidu.com");复制代码
1.1 onCreate 的初始化
mContentWedView = (WebView) findViewById(R.id.wv_contentWebView); mProgressBar = findViewById(R.id.pb_loading); mBarProgress = findViewById(R.id.pb_bar_prgress); mBarProgress.setMax(100);复制代码
2.相关设置
WebSettings settings = mContentWedView.getSettings(); settings.setDisplayZoomControls(true); // 是否显示放大缩小控件 settings.setLoadWithOverviewMode(true); // 缩到屏幕大小 settings.setJavaScriptEnabled(true); // 设置支持js功能 settings.setDomStorageEnabled(true); // 关于某些标签不支持的问题 //settings.setTextSize(WebSettings.TextSize.LARGER); // 设置字体大小 // 启动缓存 settings.setAppCacheEnabled(true); // 设置缓存模式 settings.setCacheMode(WebSettings.LOAD_DEFAULT);复制代码
3.基本回调方法
mContentWedView.setWebViewClient(new WebViewClient(){ @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); Log.d(TAG, "onPageStarted: "); mProgressBar.setVisibility(View.VISIBLE); } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); Log.d(TAG, "onPageFinished: "); mProgressBar.setVisibility(View.INVISIBLE); } // 所有的链接都会走这个方法 @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } });复制代码
mContentWedView.setWebChromeClient(new WebChromeClient(){ // 加载的网页进度 @Override public void onProgressChanged(WebView view, int newProgress) { super.onProgressChanged(view, newProgress); Log.d(TAG, "onProgressChanged: " + newProgress); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { mBarProgress.setProgress(newProgress,true); }else { mBarProgress.setProgress(newProgress); } if (newProgress == 100) { mBarProgress.setVisibility(View.GONE); } } });复制代码
4.Activity.xml
复制代码
drawable中文件 5.加载指示器 (转圆圈)
复制代码
6.进度条
复制代码