android webview

       android是对移动式互联网的产物,必然离不开互联网,今天主要介绍下webview的用法,之前项目中也用到了这种技术。废话少说。

1.建立工程文件WebViewDemo。



2.在布局文件,只有一个webview控件。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >


	<WebView  android:layout_width="fill_parent"
    		  android:layout_height="fill_parent"
    		  android:id="@+id/wbView"/>


</LinearLayout>

3.核心代码如下。

 
 
package com.webview.cn;


import com.droidstouch.webview.R;


import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;








public class WebViewActivity extends Activity {
  
 
 
 
   private WebView wbView;
   private String url="http://mp3.baidu.com/";
   private Handler handler;
   private ProgressDialog pd;
   
   
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        
        init();
        
        loadUrl(wbView, url);
        
        handler = new Handler()
        {
          public void handleMessage(android.os.Message msg)
          {
            switch(msg.what)
            {
             case 0:
               pd.show();
             break;
             
             case 1:
            	  pd.hide();//隐藏进度对话框,不可使用dismiss()、cancel(),否则再次调用show()时,显示的对话框小圆圈不会动�? 
              break;  
            }
          };
        };
    }
    
    
    
    private void init()
    {
     
     wbView = (WebView) this.findViewById(R.id.wbView);
     
     //设置可用Javascript脚本
     wbView.getSettings().setJavaScriptEnabled(true);
     wbView.setScrollBarStyle(0);//滚动条风格,�?就是不给滚动条留空间,滚动条覆盖在网页上 
     wbView.setWebViewClient(new WebViewClient()
     {
    	public boolean shouldOverrideUrlLoading(WebView view, String url)
    	{
    	  loadUrl(view, url);
    	  return true;
    	}
    	
     });
     
     
     wbView.setWebChromeClient(new WebChromeClient(){
    		public void onProgressChanged(WebView view, int newProgress)
    		{
    		 
    		 if(newProgress == 100)// 全部加载完毕
    		 {
    			 handler.sendEmptyMessage(1);
    		 }
    		 super.onProgressChanged(view, newProgress);
    		}
      });
     
     
     pd = new ProgressDialog(this);
     pd.setProgressStyle(ProgressDialog.STYLE_SPINNER);
     pd.setMessage("正在载入");
    }
    
    
    private void  loadUrl(final WebView view,final String url)
    {
     	new Thread()
     	{
     	 
     	 public void run() {
     		
     		handler.sendEmptyMessage(0);
     		view.loadUrl(url);
     	 };
     	}.start();
    }
    
    
    
}

4.运行程序。

     

5.ok,搞定!吃饭去。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值