Android中WebView加载网页设置进度条

Android中WebView加载网页设置进度条,第1张

概述本文实例为大家分享了Android中WebView加载网页设置进度条的具体代码,供大家参考,具体内容如下

本文实例为大家分享了AndroID中WebVIEw加载网页设置进度条的具体代码,供大家参考,具体内容如下

效果:

@H_301_5@

xml:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"  androID:orIEntation="vertical" androID:layout_wIDth="match_parent"  androID:layout_height="match_parent">  <linearLayout    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <relativeLayout      androID:layout_wIDth="match_parent"      androID:layout_height="48dp"      androID:background="@color/colorPrimary"      androID:layout_weight="0">      <ImageVIEw        androID:ID="@+ID/activity_add_authentication_back"        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:src="@drawable/activity_news_back"        androID:layout_marginleft="10dp"/>      <TextVIEw        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:text="网页"        androID:textcolor="@color/white"        androID:layout_centerVertical="true"        androID:layout_centerHorizontal="true"        androID:textSize="18sp"/>    </relativeLayout>  </linearLayout>  <Progressbar    androID:ID="@+ID/progressbar1"        androID:layout_wIDth="match_parent"    androID:layout_height="3dip"    androID:progressDrawable="@drawable/pg"    androID:visibility="gone" />  <WebVIEw    androID:ID="@+ID/web_vIEw"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent">  </WebVIEw></linearLayout>

pg.xml

<@R_363_3419@ xmlns:androID="http://schemas.androID.com/apk/res/androID" >  <item androID:ID="@androID:ID/background">    <shape>      <corners androID:radius="2dp" />      <gradIEnt        androID:angle="270"        androID:centercolor="#E3E3E3"        androID:endcolor="#E6E6E6"        androID:startcolor="#C8C8C8" />    </shape>  </item>  <item androID:ID="@androID:ID/progress">    <clip>      <shape>        <corners androID:radius="2dp" />        <gradIEnt          androID:centercolor="#4AEA2F"          androID:endcolor="#31CE15"          androID:startcolor="#5FEC46" />      </shape>    </clip>  </item></@R_363_3419@>

Java文件:

package com.vimi8.app.activity;import androID.content.Context;import androID.os.Bundle;import androID.vIEw.KeyEvent;import androID.vIEw.VIEw;import androID.webkit.JavaScriptInterface;import androID.webkit.WebChromeClIEnt;import androID.webkit.WebSettings;import androID.webkit.WebVIEw;import androID.webkit.WebVIEwClIEnt;import androID.Widget.Progressbar;import androID.Widget.Toast;import com.vimi8.app.R;import com.vimi8.app.framework.ActivityBase;/** * Created by vimi8 on 2017/4/18. */public class YyxText extends ActivityBase {  private WebVIEw myWebVIEw ;  private Progressbar pg1;  @OverrIDe  protected voID initvariables(Bundle savedInstanceState) {  }  @OverrIDe  protected int initLayoutVIEws() {    return R.layout.yyx_text;  }  @OverrIDe  protected voID initVIEwsAndStaticdata() {    //获取webvIEw控件    myWebVIEw = (WebVIEw) findVIEwByID(R.ID.web_vIEw);    pg1=(Progressbar) findVIEwByID(R.ID.progressbar1);    //加载服务器上的页面    myWebVIEw.loadUrl("http://www.baIDu.com");    //加载本地中的HTML    //myWebVIEw.loadUrl("file:///androID_asset/www/test2.HTML");    //加上下面这段代码可以使网页中的链接不以浏览器的方式打开    myWebVIEw.setWebVIEwClIEnt(new WebVIEwClIEnt());    //得到webvIEw设置    WebSettings webSettings = myWebVIEw.getSettings();    //允许使用JavaScript    webSettings.setJavaScriptEnabled(true);    //将WebAppInterface于JavaScript绑定    myWebVIEw.addJavaScriptInterface(new WebAppInterface(this),"AndroID");    //设置经度条    myWebVIEw.setWebChromeClIEnt(new WebChromeClIEnt(){      @OverrIDe      public voID onProgressChanged(WebVIEw vIEw,int newProgress) {        // Todo 自动生成的方法存根        if(newProgress==100){          pg1.setVisibility(VIEw.GONE);//加载完网页进度条消失        }        else{          pg1.setVisibility(VIEw.VISIBLE);//开始加载网页时显示进度条          pg1.setProgress(newProgress);//设置进度值        }      }    });  }  @OverrIDe  public boolean onKeyDown(int keyCode,KeyEvent event) {    if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebVIEw.canGoBack()) {      myWebVIEw.goBack();      return true;    }    return super.onKeyDown(keyCode,event);  }  public class WebAppInterface {    Context mContext;    /** Instantiate the interface and set the context */    WebAppInterface(Context c) {      mContext = c;    }    /** Show a toast from the web page */    @JavaScriptInterface    public voID showToast(String toast) {      Toast.makeText(mContext,toast,Toast.LENGTH_SHORT).show();    }  }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的Android中WebView加载网页设置进度条全部内容,希望文章能够帮你解决Android中WebView加载网页设置进度条所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1146376.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存