Dojo Mobile 1.8中使用自定义数据处理器开发动态的移动应用程序

在第 3 部分中,将了解如何自定义和扩展 Dojo Mobile 1.8 结构">数据处理器,并了解如何创建和注册一个自定义内容处理器。

本系列的 第 1 部分 和 第 2 部分 介绍了 Dojo Mobile 1.8 中的许多新小部件和小部件增强。本系列的最后这篇文章另辟蹊径,介绍 Dojo Mobile 1.8 的新的数据处理器功能。

ListItem 和 IconItem 等项目小部件有一个 url 属性,可使用该属性加载指定的外部视图内容,动态创建一个新目标视图。当用户选择项目小部件时,会加载和创建这个新视图。目前为止,Dojo Mobile 仅支持两种数据格式的视图内容:HTML 和 JSON(JavaScript Object Notation,JavaScript 对象表示法)。它通过两个内容处理器 来提供此支持,一个用于 HTML 片段,另一个用于 JSON 数据。

Dojo Mobile 1.8 中的数据处理器已重构为可自定义和可扩展的处理器。在本文中,将会了解这个新结构的组成部分,以及该数据处理器的数据和控制流,还会了解如何以编程方式调用数据处理器。然后,借助示例代码,您将学习如何创建和注册一个自定义内容处理器。

一个基本示例

清单 1 显示了一个利用 ListItem 的 url 属性打开两个外部视图的示例:

清单 1. 利用 url 属性打开外部视图

<ul dojoType="dojox.mobile.RoundRectList"> <li dojoType="dojox.mobile.ListItem" url="view1.html"> Open External View (HTML) </li> <li dojoType="dojox.mobile.ListItem" url="view2.json"> Open External View (JSON) </li></ul>

清单 2 显示了一些外部 HTML 内容 (view1.html),它被指定为 清单 1 中第一个 url 属性的值:

清单 2. 外部视图内容 (view1.html)

<div id="view1" dojoType="dojox.mobile.View"> <h1 dojoType="dojox.mobile.Heading" back="Home" moveTo="home">view1.html</h1> <ul dojoType="dojox.mobile.EdgeToEdgeList"> <li dojoType="dojox.mobile.ListItem"> Jack Coleman </li> <li dojoType="dojox.mobile.ListItem"> James Evans </li> <li dojoType="dojox.mobile.ListItem"> Jason Griffin </li> </ul></div>

清单 3 显示了 JSON 内容 (view2.json),它被指定为 清单 1 中第二个 url 属性的值:

清单 3. 外部视图内容 (view2.json)

{ "dojox.mobile.View": { "@id": "view2", "dojox.mobile.Heading": { "@back": "Home", "@moveTo": "home", "@label": "view2.json" }, "dojox.mobile.EdgeToEdgeList": { "dojox.mobile.ListItem": [{ "@label": "Jack Coleman" }, { "@label": "James Evans" }, { "@label": "Jason Griffin" }] } }}

图 1 表明,来自 view1.html 的外部 HTML 内容 (清单 2) 会在用户单击 清单 1 中创建的第一个 ListItem 时打开:

图 1. 动态加载的 HTML 内容

在 Dojo Mobile 1.7 和更低版本中,HTML 和 JSON 的内容处理器是硬编码的,没有自定义空间。在 Dojo Mobile 1.8 中,这些处理器经过了重构和分离,以实现自定义。

时间: 2024-09-17 04:08:44

Dojo Mobile 1.8中使用自定义数据处理器开发动态的移动应用程序的相关文章

Dojo Mobile 1.8中花更少的精力构建强大的移动应用程序

本文是由三部分组成的系列文章的第 2 部分,通过丰富的代码示例来探索这些新功能.在第 2 部分中,将了解现有 Dojo Mobile 小部件和模块中的功能. 本系列的 第 1 部分 介绍了 Dojo Mobile 1.8 中许多可用于移动 Web 应用程序的新小部件和模块.Dojo Mobile 1.8 还包含对现有 Dojo Mobile 特性的许多新增强.本文将详细分析这些增强. 列表 可编辑列表 如果一个列表小部件(EdgeToEdgeList 或 RoundRectList)的 edit

使用Dojo Mobile 1.8新的小部件增强您的移动应用程序

本文是由三部分组成的系列文章的第一部分,通过许多代码示例探索了这些新功能.在第 1 部分中,将了解 Dojo Mobile 1.8 中引入的新小部件.与小部件相关的实用程序类,以及一些模块. Dojo Mobile 1.8 引入了许多可用于http://www.aliyun.com/zixun/aggregation/14219.html">移动应用程序的新的小部件和模块.您可在 dijit 或 dojox 包中找到适用于移动应用程序的小部件,但 Dojo Mobile 小部件的设计仅包含

本地密码查看工具LaZagne中的自定义脚本开发

本文讲的是本地密码查看工具LaZagne中的自定义脚本开发,LaZagne是一款用于检索大量存储在本地计算机密码的开源应用程序. 因为每个软件储存密码的方式不尽相同(明文.API.定制算法.数据库等),所以该工具使用多种方法获取软件密码,目前支持的软件如下图 该工具通过python开发,易读.易维护,所以本文就尝试对其扩展,编写python脚本实现对360极速浏览器的密码导出,并且介绍脚本开发过程的细节. 0x01 简介 本文将要介绍以下内容: · 解决LaZagne中的bug · 开发脚本导出

Laravel 5.1中进行自定义包开发的例子

1.安装Laravel 已安装Laravel的略过本步骤,未安装的参考Laravel安装文档:Laravel 5.1安装及配置 2.创建目录和服务提供者 在根目录下创建文件夹 packages/jai/contact/src 进入src目录并创建一个服务提供者ContactServiceprovider.php: <?php namespace Jai\Contact; use Illuminate\Support\ServiceProvider; use Illuminate\Routing\

最新版移动Web开发框架Dojo Mobile 1.7入门

移动 Web 使用量正呈指数型增长.随着更多的人习惯于使用智能手机或其他移动设备浏览 Web,针对那些为了实现移动版本而进行优化的网站和 Web 应用程序的需求在增加.由于平台数量越来越多(iOS.Android.Blackberry OS.webOS.Windows Phone.Symbian.Bada 等),很难开发针对多个移动操作系统的原生应用程序. 因此,人们迫切需要开发移动 Web 应用程序的工具包.几个主要的 JavaScript 框架(Dojo.jQuery 和 Sencha)很快

Web开发框架Dojo Mobile 1.6入门

本文还将提供该框架的下一个版本中包含的一些新特性的预览. 移动 Web 使用量正在呈指数式增长.随着更多的人习惯于使用智能手机或其他移动设备浏览 Web,使用移动设备访问优化的网站和 Web 应用程序的需求也在增加.由于平台数量越来越多(iOS.Android.Blackberry OS.webOS.Windows Phone.Symbian.Bada 等),很难开发针对多个移动操作系统的原生应用程序. 因此,人们迫切需要移动 Web 应用程序开发工具包.几个主要的 JavaScript 框架

WSS3SDK之演练--在mobile页面中创建自定义字段渲染控件

本演练将展示如何通过自定义字段渲染控件关联一个RenderingTemplate来定制mobile页面上的字段渲染.下面的样例展示了如何定制通知列表项的标题字段在mobile的显示项目,新建项目和编辑项目页面中的渲染.根据3类页面的不同,定制化的内容也不一样: 显示窗体- 添加了一个搜索链接,使得用户可以导航到MSN新闻搜索结果页面. 编辑窗体- 当到期日期一栏的值小于当前日期时添加了默认文本. 新建窗体- 添加了默认文本来为用户展示待输入的值的特定格式. 必要要求 完成了前面的关于定制Mobi

如何在Android中结合使用PhoneGap和Dojo Mobile

您还将使用 Dojo Mobile 为应用程序提供一种与原生应用类似的感觉.在本文中,将了解如何结合使用 PhoneGap 和 Dojo Mobile,快速为 Android 创建一个外观和行为都类似于典型 Android 应用程序的混合移动应用程序. 无论您走到哪里,都能看到人们使用移动设备与亲朋进行联系,比如照张照片发布到社交网站上,查找饭店地址,或者查看最新的新闻标题.移动设备的外形和款式各式各样.移动电话可以运行各种不同的操作系统,比如 Apple 的 iOS.Google 的 Andr

IBM Worklight Studio和Dojo Mobile零售银行业务开发解决方案

位于达拉斯的 IBM 全球解决方案中心团队为零售银行业务开发了一个http://www.aliyun.com/zixun/aggregation/14219.html">移动应用程序.该应用程序包含许多零售银行业务功能,比如支行和 ATM 位置.联系人.帐户余额和活动.转账等.设计该应用程序是为了将它用于和部署到 iOS 和 Android 智能电话上,该应用程序是以一种混合方式使用 IBM Worklight Studio 构建的.Dojo Mobile(一个开发跨平台移动 Web 应用