[转贴]Android研究院之WebView的简单使用(十六)

   最近的项目中看产品文档的时候,发现设计文档中”资讯”栏目设计的图文并茂,有声有色,感叹之余,发觉如此的布局写起来太烦太累了…想到了平时使用浏览器看新闻的体验,感觉让服务端把资讯做成网页,客户端使用WebView这个组件来直接访问页面的方式挺不错.

WebView非常简单,Android已经封装的非常完善,写个小例子覆盖其间常用的几个方法;

新建一个安卓项目,建议使用2.3以上SDK(因为之前版本的SDK测试一直不太好使而且没确定原因);

首先创建个布局文件:

 

然后代码中调用并设置

 

最后别忘了在AndroidManifest.xml文件中添加网络访问权限:

Android研究院之WebView的简单使用(十六) - 雨松MOMO程序研究院 - 1Android研究院之WebView的简单使用(十六) - 雨松MOMO程序研究院 - 2

 

        第一个窗口中点击链接会在第二个窗口中打开,点击回退的话如果下面的WebView可以回退就会执行后退操作,如果不能则退出Activity.布局文件和代码都可以创建WebView对象,在此使用布局直接创建,代码创建的话构造方法有四个:

 

其中loadUrl方法可以让WebView载入指定的页面;

如果访问的页面有Javascript元素,使用 setJavaScriptEnabled(true) 可设置是否支持;

getSettings()方法可以获得当前WebView对象的WebSettings属性,通过这个属性可以给WebView获取或设置样式,比如例中设置的缩放和单列样式,双击上面WebView网页空白处可以放大该WebView;

通过setWebViewClient(WebViewClient webviewclient)方法可以设置WebView响应点击的超链接,参数WebViewClient重写其中的 shouldOverrideUrlLoading方法,实现你想做的事情就可以了,在这里面是可以拿到点击链接的url的;例中WebView1的点击 会在WebView2中打开;

覆盖onKeyDown方法是为了实现下面WebView的回退功能,否则的话会直接退出当前Activity;

还有需要注意的是,在显示有图片和网格的的页面时,WebView的表现并不是很尽如人意的,这个问题大部分情况都是在服务器的页面上动手脚,参照wap网站页面的做法最好了.

简单举例最常用的几个方法,想要深入学习和使用的话API还有很多方法.

posted @ 2014-12-03 17:59  东方小虾米  阅读(106)  评论(0编辑  收藏  举报