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

1 WebViewer控件

2.WebViewClient和WebChromClient

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

  
  对于浏览器的设置,可以通过WebSettings来设置WebView的一些属性、状态等。代码如下:
  
  Java代码:
    WebSettingswebSettings=mWebView.getSettings();
  webSettings.setJavaScriptEnabled(true);
  //设置可以访问文件
  webSettings.setAllowFileAccess(true);
  //设置支持缩放
  webSettings.setBuiltInZoomControls(true);

  2.WebViewClient和WebChromClient
  
  WebViewClient和WebChromClientshi可以看作是辅助WebView管理网页中各种通知、请求等事件以及JavaScript时间的两个类。
  
  2.1WebViewClient
  
  通过WebView的setWebViewClient方法指定一个WebViewClient对象。通过覆盖该类的方法来辅助WebView浏览网页。代码如下:
  
  Java代码:
    mWebView.setWebViewClient(newWebViewClient()
  {
  publicbooleanshouldOverrideUrlLoading(WebViewview,Stringurl)
  {
  view.loadUrl(url);
  returntrue;
  }
  @Override
  publicvoidonPageFinished(WebViewview,Stringurl)
  {
  super.onPageFinished(view,url);
  }
  @Override
  publicvoidonPageStarted(WebViewview,Stringurl,Bitmapfavicon)
  {
  super.onPageStarted(view,url,favicon);
  }
  });

  2.2WebChromClient
  
  对于网页中使用的JavaScript脚本语言,就可以使用该类处理Js事件,如对话框加载进度等。例如:
  
  Java代码:
    mWebView.setWebChromeClient(newWebChromeClient(){
  
  
  @Override
  //处理javascript中的alert
  publicbooleanonJsAlert(WebViewview,Stringurl,Stringmessage,
  finalJsResultresult)
  {
  //构建一个Builder来显示网页中的对话框
  Builderbuilder=newBuilder(Activitythis);
  builder.setTitle("提示对话框");
  builder.setMessage(message);
  builder.setPositiveButton(android.R.string.ok,
  newAlertDialog.OnClickListener(){
  publicvoidonClick(DialogInterfacedialog,intwhich){
  //点击确定按钮之后,继续执行网页中的操作
  result.confirm();
  }
  });
  builder.setCancelable(false);
  builder.create();
  builder.show();
  returntrue;
  };
  }

更多相关文章

  1. JDK ANT ANDROID Configure
  2. android设置Webview的滚动条属性
  3. 教你如何创建类似QQ的android弹出菜单
  4. Android(安卓)PackageInstaller:安装应用的应用
  5. android UI事件
  6. android 自定义通知消息设置背景色不生效,导致部分机型显示白色字
  7. Ubuntu下Android(安卓)NDK的安装及配置
  8. 修改Android默认的RadioButton样式
  9. Android(安卓)初识AppBarLayout 和 CoordinatorLayout

随机推荐

  1. 解决Android应用安装快完毕时提示签名冲
  2. 没有找到类“android.support.v7.interna
  3. Tumblr API Photo Post返回401(未授权)
  4. 从零开始的Android新项目2 - Gradle篇
  5. 如何在Android设备上读取CPU频率
  6. Android(监听+回调=观察者)模式从Dialog到A
  7. [置顶] android加密解密算法之3DE
  8. Android 中文件类型与MIME的匹配表
  9. 实战Andriod开发环境部署
  10. Android Studio 项目的导入以及依赖