【转】使用HTML来生产Android界面.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【转】使用HTML来生产Android界面

【转】使用HTML 来生产Android 界面 (2011-04-28 11:20:02) 转 载 ▼ 标签: html android 界面 javascript 双向解析 数据交互 ui 用户界面 it 1. HTML 开发软件界面 因为android 软件开发分工目前还没有细化,程序员往往需要负责软件界面的开发, 虽然软件的界面图片已经由美工设计好了,但如果使用layout 技术把软件做成如图片所示的界面确实很困难,而且也比较耗时。 Android 通过WebView 实现了JS 代码与Java 代码互相通信的功能,使的android 软件的界面开发也可以采用HTML 网页技术, 这样,广大网页美工可以参与进android 软件的界面开发工作,从而让程序员从中解脱出来。 2. WebView WebView 控件可以显示一张网页。 WebView android:layout_width=fill_parent android:layout_height=fill_parent android:id=@+id/webView / 首先要将一张由美工MM 设计的精美的网页复制到项目中来,建议放在 assets 目录下,assets 目录下的资源将不会被添加到R 文件中。 然后在 Activity 里首先找到 WebView 控件,然后调用它的 loadUrl 方法,就可以载入一张网页,显示在界面上。 WebView webView = (WebView) findViewById(R.id.webView); webView.loadUrl(file:///android_asset/index.html); 注意这里用到的是文件访问协议:file:///,而我们项目中的 assets 文件夹部署到手机后,就变成了 android_asset 。 有两点注意:file:/// 是三个斜杠 是 asset 不是 assets loadUrl 提供了一个很重要的重装后的方法,将在第4 点说到。 3. 当然,这样一种机制太死板了,一个数据纯静态的网页,意义不大。 Android 提供了一种与网页 JS 代码通信的机制。 这种机制使 HTML 网页中,可以通过 JS 来访问 JAVA 对象的方法。 这里又要用到 WebView 的另一个方法:addJavascriptInterface(Object obj, String interfaceName) WebView 的作用就相当于 HTML 页面和 JAVA 对象的中间人,它们的所有活动都需要这个中间人来处理一下。 例如,addJavascriptInterface 就可以将一个 JAVA 对象提供给 HTML 页面的 JS 代码来访问。 仔细想一下,这技术也没什么稀奇的,无非就是反射的一种应用而已。被 WebView 来管理的 HTML 本身已不是传统意义的 HTML 静态网页了。 因为,处理它的再也不是浏览器了,既然如此。HTML 的意义就仅剩下 ”一个普通文档“ 的意义了。既然如此,WebView 要 怎么来解释这个文档,还不是它设计者一句话的事情。 因此,其设计人员规定,当解释到类似 contact.getContacts() 的 JS 代码时,以 contact 作为键,找到它所对应的 JAVA 对 象,再通过反射技术,调用这个对象的 getContacts() 方法。若方法有返回值,则将返回值返回到 JS 调用的地方。感觉过程甚 至和 JSP 有点类似了。 这是一种非常巧妙的思路。个人觉得,Android 可以照着这个思路,干得更彻底一点 —— 当然强烈鄙视最后变成了 JSP。 contact.getContacts() :中的 contact 最终之所以能作为键找到对应的 JAVA 对象,是因为在加载这张网页前。我们在程序

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档