http://blog.csdn.net/wangyuchun_799/article/details/7489955

Android和iOS系统都提供了标准的浏览器控件,在Android中是WebView,iOS中为UIWebView。在iOS中你实例化一个UIWebView即可调用loadRequest来加载一个网页,但是在Android中你不仅需要创建一个WebView,还需要做一些其他的事情,建议初次使用WebView的读者按照以下步骤使用:

(1)在要实现WebView的XML中添加一个WebView,并按照自己的要求进行排版,如下:
<FrameLayout        android:layout_width="fill_parent"        android:layout_height="fill_parent"        android:layout_gravity="center">//添加一个WebView控件    <WebView        android:id="@+id/webView"        android:layout_width="fill_parent"        android:layout_height="fill_parent" />//在当前Activity的中心位置放置一个不停转圈的加载进度条    <ProgressBar android:id="@+id/progressBar"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_gravity="center"        android:visibility="gone"/></FrameLayout>


(2)在AndroidManifest.xml中添加网络访问权限,没有权限是访问不了网络的。
    <uses-permission android:name="android.permission.INTERNET" />    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

(3)在使用WebView的Activity中添加如下代码:
//获取WebView变量
WebView webView = (WebView)findViewById(R.id.webView);

//××××××××
//切记要添加下一行代码,因为Android中的WebView默认是不响应JavaScript控件的,如果不加下面这一行,就会出现一个很奇怪的问题,网上也有很多人都在问,为什么加载的网页链接可以点击并跳转,但是按钮点了却没反应。因为很多网页的控件是通过JS编写的,所以要添加下面一行代码以便响应JS控件。
webView.getSettings().setJavaScriptEnabled(true);

//××××××××
//加载一个网页
webView.loadUrl("http://www.baidu.com");


(4)处理页面加载状况回调,如开始加载网页,加载成功,加载超时等
//添加网页加载状况回调,这里使用了WebViewClient的匿名内部类方式,如果你不知道WebViewClient类有哪些可以响应的回调函数的话,你可以在代码中选中WebViewClient,右键选择源代码--->覆盖/实现方法,在弹出的对话框中包含了WebViewClient的所有可以覆盖的方法。如果不添加这个方法的话,当你点击网页中的链接时,会弹出一个框提示你使用哪种浏览器来打开这个链接。
webView.setWebViewClient(new WebViewClient(){//网页加载开始时调用,显示加载提示旋转进度条            @Override            public void onPageStarted(WebView view, String url, Bitmap favicon) {                // TODO Auto-generated method stub                super.onPageStarted(view, url, favicon);                progressBar.setVisibility(android.view.View.VISIBLE);//                Toast.makeText(ElecHall.this, "onPageStarted", 2).show();            }//网页加载完成时调用,隐藏加载提示旋转进度条            @Override            public void onPageFinished(WebView view, String url) {                // TODO Auto-generated method stub                super.onPageFinished(view, url);                progressBar.setVisibility(android.view.View.GONE);//                Toast.makeText(ElecHall.this, "onPageFinished", 2).show();            }//网页加载失败时调用,隐藏加载提示旋转进度条            @Override            public void onReceivedError(WebView view, int errorCode,                    String description, String failingUrl) {                // TODO Auto-generated method stub                super.onReceivedError(view, errorCode, description, failingUrl);                progressBar.setVisibility(android.view.View.GONE);//                Toast.makeText(ElecHall.this, "onReceivedError", 2).show();            }                    });


5.载入自定义数据
        webView = (WebView) findViewById(R.id.webView);        webView.loadData("<a href='x'>Hello World! - 1</a>", "text/html", "UTF-8");

更多相关文章

  1. Android(安卓)Activity界面切换添加动画特效
  2. "Failed to fetch URL https://dl-ssl.google.com/android/repos
  3. Android(安卓)Chromium WebView html js 开发系列
  4. Android(安卓)流式布局FlowLayout(搜索历史),多布局、删除、添加
  5. Android(安卓)P SystemUI之StatusBar UI布局status_bar.xml解析
  6. Android--SoLoader,android动态加载so库
  7. Android(安卓)SDK Manager无法更新的解决
  8. Android(安卓)Activity界面切换添加动画特效
  9. Android异步加载图像小结 (含线程池,缓存方法)

随机推荐

  1. Android官方架构组件:Lifecycle
  2. android颜色对应的xml配置值
  3. android第一天
  4. Android(安卓)RelativeLayout 相对布局
  5. Android(安卓)Input Event Dispatching
  6. ch024 Android(安卓)BroadCastReceiver
  7. VLC on Android
  8. android添加广告之--admob
  9. android 正三角,倒三角的实现代码
  10. android ui RelativeLayout中按扭平行显