Android中,提供了WebKit引擎用于对网页浏览和操作进行编程。GoogleWebKit进行了封装,提供了丰富的Java接口,其中最重要的便是android.webkit.WebView控件。

 

1. WebViewer控件

  Android提供了WebView控件专门用来浏览网页。其使用方法和其他控件一样,需要在布局文件中进行布局,然后在程序中就可以使用并进行设置了。通过loadUrl方法,可以访问网页。代码如下:

 
 

                                
  1. wb=(WebView)findViewById(R.id.wb);  
  2. wb.loadUrl(url); 

 

  对于浏览器的设置,可以通过WebSettings来设置WebView的一些属性、状态等。代码如下:

 
 

                                
  1. WebSettings webSettings = mWebView.getSettings();    
  2.         webSettings.setJavaScriptEnabled(true);  
  3.         //设置可以访问文件  
  4.         webSettings.setAllowFileAccess(true);  
  5.         //设置支持缩放  
  6.         webSettings.setBuiltInZoomControls(true);  

 

 

2. WebViewClientWebChromClient

  WebViewClientWebChromClientshi 可以看作是辅助WebView管理网页中各种通知、请求等事件以及JavaScript时间的两个类。

2.1 WebViewClient

  通过WebViewsetWebViewClient方法指定一个WebViewClient对象。通过覆盖该类的方法来辅助WebView浏览网页。代码如下:

 
 

                                
  1. mWebView.setWebViewClient(new WebViewClient()  
  2.         {     
  3.             public boolean shouldOverrideUrlLoading(WebView view, String url)   
  4.             {     
  5.                 view.loadUrl(url);     
  6.                 return true;     
  7.             }    
  8.             @Override 
  9.             public void onPageFinished(WebView view, String url)   
  10.             {  
  11.                 super.onPageFinished(view, url);  
  12.             }  
  13.             @Override 
  14.             public void onPageStarted(WebView view, String url, Bitmap favicon)   
  15.             {  
  16.                 super.onPageStarted(view, url, favicon);  
  17.             }  
  18.         });  

 

 

2.2 WebChromClient

  对于网页中使用的JavaScript脚本语言,就可以使用该类处理Js事件,如对话框加载进度等。例如:

 

                
  1. mWebView.setWebChromeClient(new WebChromeClient(){  
  2.             @Override 
  3.             //处理javascript中的alert  
  4.             public boolean onJsAlert(WebView view, String url, String message,  
  5.                     final JsResult result)   
  6.             {  
  7.                 //构建一个Builder来显示网页中的对话框  
  8.                 Builder builder = new Builder(Activity01.this);  
  9.                 builder.setTitle("提示对话框");  
  10.                 builder.setMessage(message);  
  11.                 builder.setPositiveButton(android.R.string.ok,  
  12.                         new AlertDialog.OnClickListener() {  
  13.                             public void onClick(DialogInterface dialog, int which) {  
  14.                                 //点击确定按钮之后,继续执行网页中的操作  
  15.                                 result.confirm();  
  16.                             }  
  17.                         });  
  18.                 builder.setCancelable(false);  
  19.                 builder.create();  
  20.                 builder.show();  
  21.                 return true;  
  22.             };  

 

更多相关文章

  1. 如何去掉android 控件默认选中时的背景橘黄色
  2. Android 自定义控件外观
  3. android学习五(android中基本控件的使用)
  4. Android自定义扁平化对话框
  5. Android 盘点所有Dialog 对话框 大合集 详解
  6. 【Android 初学】3、控件布局初步
  7. Android 自定义View——自定义View控件
  8. android控件属性介绍

随机推荐

  1. Android的UI显示原理之Surface的创建
  2. Android(安卓)Overlay机制
  3. Android(安卓)地理编码&逆地理编码(百度、
  4. Android(安卓)Studio "nativeLibraryDire
  5. jQuery 判断iPad、iPhone、Android是横屏
  6. 搭建andorid开发环境
  7. Windows下安装 Android(安卓)Studio
  8. 如何把批量数据导入到android 的 sqlite
  9. Android(安卓)Studio连接手机设备教程(完
  10. ANDROID 在eclipse中没有出现AVD的解决方