项目中用到WebView加上进度条放在顶部,让用户知道加载进度情况,可以提高用户体验:
<>强效果:强>
<强>布局:强>
& lt;使用 android: layout_width=" match_parent " android: layout_height=" match_parent " 面向android:=按怪薄北? & lt; WebView android: id=癅 + id/webView” android: layout_width=" match_parent " android: layout_height=" match_parent " android: layout_below=癅 + id/toolbar_container”/比; & lt; ProgressBar android: id=癅 + id/progressBar” android: layout_width=" match_parent " android: layout_height=" 3 dp” android: layout_below=癅 + id/toolbar_container” android:背景=癅drawable/crowd_progressbar_unselect”/比; & lt;/RelativeLayout>
进度条样式:
& lt;样式名=癱rowd_item_progressBar”比; & lt;项目名称=" android: indeterminateOnly "祝辞false & lt;项目名称=" android: progressDrawable "祝辞@drawable/crowd_progressbar_background & lt;项目名称=" android: minHeight "祝辞10 dp & lt;项目名称=" android: maxHeight "祝辞10 dp & lt;/style>
进度图片:
& lt; layer-list xmlns: android=" http://schemas.android.com/apk/res/android "比; & lt;项目 android: id=" @android: id/进展”比; & lt; clip> & lt; shape> & lt;固体android:颜色=癅color/选择”/比; & lt; !——& lt;角落android:半径=" 1.5 dp/祝辞——比; & lt;/shape> & lt;/clip> & lt;/item> & lt;/layer-list>
代码:
公共类WebChromeClient android.webkit延伸。WebChromeClient { @Override 公共空间onProgressChanged (WebView看来,int newProgress) { 如果(newProgress==100) { mProgressBar.setVisibility(了); 其他}{ 如果(mProgressBar.getVisibility()==消失了) mProgressBar.setVisibility(可见); mProgressBar.setProgress (newProgress); } 超级。onProgressChanged(视图,newProgress); } } @Override 保护无效onScrollChanged (int, int, int oldl, int oldt) { LayoutParams lp=(LayoutParams) mProgressBar.getLayoutParams (); lp。x=l; lp。y=t; mProgressBar.setLayoutParams (lp); 超级。onScrollChanged (l、t、oldl oldt); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。