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

本文是由三部分组成的系列文章的第 2 部分,通过丰富的代码示例来探索这些新功能。在第 2 部分中,将了解现有 Dojo Mobile 小部件和模块中的功能。

本系列的 第 1 部分 介绍了 Dojo Mobile 1.8 中许多可用于移动 Web 应用程序的新小部件和模块。Dojo Mobile 1.8 还包含对现有 Dojo Mobile 特性的许多新增强。本文将详细分析这些增强。

列表

可编辑列表

如果一个列表小部件(EdgeToEdgeList 或 RoundRectList)的 editable 属性为 true,那么用户可以重新排序列表中的项目。要进入编辑模式,可以获取列表小部件的引用并调用 startEdit() 方法。然后,对于每一项,左侧都会出现一个删除图标,右侧都会出现一个移动手柄图标。

用户可通过拖动移动手柄来移动一个项目,如 图 1 中间的屏幕截图所示:

图 1. 可编辑列表小部件

Autoscrolling 尚未实现。因此无法在您拖动一个项目时滚动列表。

当用户触摸删除图标时,除了发布 /dojox/mobile/deleteListItem 主题,列表小部件不会执行任何操作。应用程序必须订阅该主题,然后才能触摸该图标来执行相应的操作,比如显示一个删除按钮,以便确认(如 图 1 中右侧的屏幕截图所示)或删除选定的项目。请参见 Dojo Mobile 每日构建版测试中的 tests/test_RoundRectList-editable.html,获取完整的示例。

清单 1 显示了如何在标记中实例化一个可编辑的 RoundRectList:

清单 1. 一个可编辑 RoundRectList 的示例

<ul data-dojo-type="dojox.mobile.RoundRectList" data-dojo-props='editable:true'> <li data-dojo-type="dojox.mobile.ListItem"> ...</ul>

类别标题

无需使用 EdgeToEdge">Category 小部件,您可为 ListItem 指定 header:true,以创建类别标题,如 清单 2 中所示:

清单 2. 类别标题的示例

<ul data-dojo-type="dojox.mobile.EdgeToEdgeList"> <li data-dojo-type="dojox.mobile.ListItem">Item 1</li> <li data-dojo-type="dojox.mobile.ListItem" data-dojo-props='header:true'>Category</li> <li data-dojo-type="dojox.mobile.ListItem">Item 2</li> <li data-dojo-type="dojox.mobile.ListItem">Item 3</li></ul>

清单 2 实现了 图 2 中所示的类别标题:

图 2. 类别标题

在通过一个数据存储向列表小部件提供数据时,此功能特别有用。清单 3 显示了一个 JSON(JavaScript Object Notation,JavaScript 对象表示法)数据的示例,其中包含具有 header:true 的项:

清单 3. 包含类别标题的 JSON 数据

[ { label: "Category 1", header: true }, { label: "Wi-Fi", icon: "i-icon-1.png", moveTo: "wifi" }, { label: "Brightness & Wallpaper", icon: "i-icon-2.png", moveTo: "bright" }, { label: "Picture Frame", icon: "i-icon-3.png", moveTo: "picture" }, { label: "General", icon: "i-icon-4.png", moveTo: "general", "selected": "true" }, { label: "Mail, Contacts, Calendars", icon: "i-icon-5.png", moveTo: "wifi" }, { label: "Safari", icon: "i-icon-6.png", moveTo: "bright" }, { label: "
iPod", icon: "i-icon-7.png", moveTo: "picture" }, { label: "Category 2", header: true }, { label: "Video", icon: "i-icon-8.png", moveTo: "general" }, { label: "Photos", icon: "i-icon-9.png", moveTo: "wifi" }, { label: "Store", icon: "i-icon-10.png", moveTo: "bright" }];

清单 3 实现了 图 3 中所示的列表:

图 3. 包含类别标题的列表

时间: 2024-12-10 10:58:31

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

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

在第 3 部分中,将了解如何自定义和扩展 Dojo Mobile 1.8 结构http://www.aliyun.com/zixun/aggregation/14345.html">数据处理器,并了解如何创建和注册一个自定义内容处理器. 本系列的 第 1 部分 和 第 2 部分 介绍了 Dojo Mobile 1.8 中的许多新小部件和小部件增强.本系列的最后这篇文章另辟蹊径,介绍 Dojo Mobile 1.8 的新的数据处理器功能. ListItem 和 IconItem 等项目小部件

最新版移动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 框架

使用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 小部件的设计仅包含

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

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

移动Web设计:Mobile Web设计中的建议和禁忌

文章描述:如果你正准备为你的网站制作一个移动设备版本,那这篇文章将会对你相当有用,在本文中,将探索移动Web网页编码设计的各种技巧和注意事项. 如果你正准备为你的网站制作一个移动设备版本,那这篇文章将会对你相当有用,在本文中,将探索移动Web网页编码设计的各种技巧和注意事项: 为了移动设备上的用户体验可以被接受,代码得怎么设计. "Mobile Web"与普通网站的不同之处? 可以让网站成功运行在移动设备和桌面浏览器上的基本技巧 一些Mobile Web设计中的建议和禁忌.以及大量资源

Mobile Web设计中的建议和禁忌

在这篇文章中,我将努力揭开Mobile Web开发的神秘面纱,换句话说,也就是为了移动设备上的用户体验可以被接受,代码得怎么设计.我将阐述"Mobile Web"与普通网站的不同之处.可以让网站成功运行在移动设备和桌面浏览器上的基本技巧.一些Mobile Web设计中的建议和禁忌.以及大量资源 – 你可以去找到更多有用的信息. Mobile Web和普通网站到底有何不同呢? 这是个很好的问题 – 首先,也许我们应该从"什么是Mobile Web"的问题开始.毕竟,用

玩家之所以买的少,是因为他们想要的游戏更少

这个问题曾经多次以各种不同的形式提出过,而问题的答案也是五花八门.有的认为这是因为这些用户在这一年花了不少的钱来购买他们的新主机并藉此得到了不少的游戏.有的认为是因为现在市场上并没有了太多的游戏可以选择.还有的认为是因为已经发行的游戏中能够达到优秀游戏标准的并没有多少. 这些回答说得全都有道理,但是我却有另外一种观点:玩家之所以买的少,是因为他们想要的游戏更少. 现今的许多大作--比如<命运>(Destiny).<侠盗猎车手5>(Grand Theft Auto V)以及<我

写更好的代码,还是写更少的代码?

先来看一个有趣的讨论:    引用 我宁愿让我的学生尽他们最大的努力去写更好的代码,而不是写更好的注释.--Uncle Bob Martin(设计模式和敏捷开发先驱,<代码整洁之道>作者)  比起"更好"的代码,我更宁愿学生们写更少的代码.--Bob Marshall  没有任何事情比"非常有效率地做了一件本不应该做的事"更没用的了.--Peter Drucker 这引发了一场关于"写更好的代码"还是"写更少的代码"