热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Fries:使用HTML、JavaScript和CSS搭建Android本地接口

受iPhone应用原型设计框架Ratchet的启发,JauneSarmiento创建了Fries——一个用来创建Android应用UI的小型框架,在创建

受iPhone应用原型设计框架Ratchet的启发,Jaune Sarmiento创建了Fries——一个用来创建Android应用UI的小型框架,在创建过程中使用HTML、Javascript和CSS,而无需本地代码。虽然已有许多类似的框架,但Fries对Android 4.0本地接口模仿得尤为出色。

\u0026#xD;\n

目前,Fries定义了若干UI组件,包括:操作栏(包括向上按钮、操作按钮、操作溢出菜单和副标题)、标签、按钮、下拉菜单、列表(2行和多行)和表单(包括可伸缩表单)。下图展现了顶部的操作栏,它带有一个操作项和溢出菜单项:

\u0026#xD;\n

8cc9c260106b0f2a593300edd59b1c8a.png\

\u0026#xD;\n

对应的HTML代码如下:

\u0026#xD;\n

\u0026#xD;\n\u0026lt;div class=\"page\"\u0026gt;\u0026#xD;\n \u0026lt;header class=\"action-bar fixed-top\"\u0026gt;\u0026#xD;\n \u0026lt;a class=\"app-icon action\" href=\"#\"\u0026gt;\u0026#xD;\n \u0026lt;i class=\"icon-fries\"\u0026gt;\u0026lt;/i\u0026gt;\u0026#xD;\n \u0026lt;/a\u0026gt;\u0026#xD;\n \u0026lt;h1 class=\"title\"\u0026gt;Action Buttons\u0026lt;/h1\u0026gt;\u0026#xD;\n \u0026lt;ul class=\"actions pull-right\"\u0026gt;\u0026#xD;\n \u0026lt;li\u0026gt;\u0026lt;a title=\"Search\" class=\"action\" href=\"\u0026#xD;\n#\"\u0026gt;\u0026lt;i class=\"icon-search\"\u0026gt;\u0026lt;/i\u0026gt;\u0026lt;/a\u0026gt;\u0026#xD;\n \u0026lt;li\u0026gt;\u0026lt;a title=\"Copy\" class=\"action\" href=\"\u0026#xD;\n#\"\u0026gt;\u0026lt;i class=\"icon-copy\"\u0026gt;\u0026lt;/i\u0026gt;\u0026lt;/a\u0026gt;\u0026#xD;\n \u0026lt;li\u0026gt;\u0026lt;a title=\"Cut\" class=\"action\" href=\"\u0026#xD;\n#\"\u0026gt;\u0026lt;i class=\"icon-scissors\"\u0026gt;\u0026lt;/i\u0026gt;\u0026lt;/a\u0026gt;\u0026#xD;\n \u0026lt;li\u0026gt;\u0026lt;a title=\"Settings\" class=\"action\" href=\"\u0026#xD;\n#\"\u0026gt;\u0026lt;i class=\"icon-settings\"\u0026gt;\u0026lt;/i\u0026gt;\u0026lt;/a\u0026gt;\u0026#xD;\n \u0026lt;/li\u0026gt;\u0026lt;/ul\u0026gt;\u0026#xD;\n \u0026lt;/header\u0026gt;\u0026#xD;\n\u0026lt;/div\u0026gt;\u0026#xD;\n\u0026#xD;\n

就像上图一样,基于Fries的应用是一系列HTML“页面”,在请求时使用stack.js载入它们——stack.js改编自Ratchet的push.js,它在需要的时候执行AJAX调用,从服务器端取回新的页面。Sarmiento表示,stack.js使用“HTML5历史API,因此不会破坏Android设备的后退按钮功能。”

\u0026#xD;\n

Fries使用PhoneGap实现页面间的过渡,一段YouTube上的视频对此进行了展示。

\u0026#xD;\n

Sarmiento给出了一份简要的路线图,其中提到了可滑动标签、模态、进度条等内容。

\u0026#xD;\n

目前,在搭建HTML5接口以模拟本地接口时还存在一些问题。HTML5应用的主要价值在于一次编写就可以部署在多种移动操作系统上。但Fries与Android风格类似,而与iOS并不是非常匹配。如果在Ratchet和Fries之上搭建一个抽象的UI框架或许能够解决这个问题,这样的框架根据应用在哪个操作系统——iOS或Android——上运行来切换框架。

\u0026#xD;\n

另一个重大问题与应用的离线运行相关。目前,Fries应用需要保持Internet连接,或是在设备上运行一个Web服务器。这个问题可以通过运用HTML5离线特性来解决,届时应用将被缓存或本地存储。

\u0026#xD;\n

查看英文原文:Fries: Building a Native Android Interface with HTML, Javascript and CSS


推荐阅读
  • Python 内存管理机制详解
    本文深入探讨了Python的内存管理机制,涵盖了垃圾回收、引用计数和内存池机制。通过具体示例和专业解释,帮助读者理解Python如何高效地管理和释放内存资源。 ... [详细]
  • Appium + Java 自动化测试中处理页面空白区域点击问题
    在进行移动应用自动化测试时,有时会遇到某些页面没有返回按钮,只能通过点击空白区域返回的情况。本文将探讨如何在Appium + Java环境中有效解决此类问题,并提供详细的解决方案。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • JSOI2010 蔬菜庆典:树结构中的无限大权值问题
    本文探讨了 JSOI2010 的蔬菜庆典问题,主要关注如何处理非根非叶子节点的无限大权值情况。通过分析根节点及其子树的特性,提出了有效的解决方案,并详细解释了算法的实现过程。 ... [详细]
  • 本文详细介绍了JSP的三大指令:page、include和taglib,重点探讨了静态包含与动态包含的区别及其应用场景,并解释了如何使用taglib指令引入第三方标签库。 ... [详细]
  • 2018-2019学年第六周《Java数据结构与算法》学习总结
    本文总结了2018-2019学年第六周在《Java数据结构与算法》课程中的学习内容,重点介绍了非线性数据结构——树的相关知识及其应用。 ... [详细]
  • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
    本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 深入解析Java枚举及其高级特性
    本文详细介绍了Java枚举的概念、语法、使用规则和应用场景,并探讨了其在实际编程中的高级应用。所有相关内容已收录于GitHub仓库[JavaLearningmanual](https://github.com/Ziphtracks/JavaLearningmanual),欢迎Star并持续关注。 ... [详细]
  • 本文深入探讨了SQL数据库中常见的面试问题,包括如何获取自增字段的当前值、防止SQL注入的方法、游标的作用与使用、索引的形式及其优缺点,以及事务和存储过程的概念。通过详细的解答和示例,帮助读者更好地理解和应对这些技术问题。 ... [详细]
  • 本文介绍了如何使用JavaScript的Fetch API与Express服务器进行交互,涵盖了GET、POST、PUT和DELETE请求的实现,并展示了如何处理JSON响应。 ... [详细]
  • 本文详细介绍了流编辑器sed中的G、H、g、h命令,探讨了它们的工作原理及应用场景。通过实例解析和图解分析,帮助读者掌握这些高级命令的使用方法。 ... [详细]
  • 深入理解Vue.js:从入门到精通
    本文详细介绍了Vue.js的基础知识、安装方法、核心概念及实战案例,帮助开发者全面掌握这一流行的前端框架。 ... [详细]
  • 探索新一代API文档工具,告别Swagger的繁琐
    对于后端开发者而言,编写和维护API文档既繁琐又不可或缺。本文将介绍一款全新的API文档工具,帮助团队更高效地协作,简化API文档生成流程。 ... [详细]
  • Redux入门指南
    本文介绍Redux的基本概念和工作原理,帮助初学者理解如何使用Redux管理应用程序的状态。Redux是一个用于JavaScript应用的状态管理库,特别适用于React项目。 ... [详细]
author-avatar
2012-末日审判
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有