最近在一个Flex遗留系统上工作,Flex部分承担的主要是用户注册的业务。
用户注册需要多个步骤,比如填写完基本信息,通过验证之后,来到联系信息填写表单,等等。步骤之间的切换通过改变当前页面的state来实现:State控制不同控件的显示、掩藏等。
直觉不应该这么实现,今天看了《Flex 3权威指南》
之后,终于找到了答案:ViewStack才是这种场景的正确实现方式。
State和ViewStack虽然都可以用来实现上述的场景,但使用state方式的问题在于它不是为这种场景设计的实现方式。所以,在实现过程中可能会非常痛苦。
以下是State和ViewStack的一些区别:
|
State |
ViewStack |
使用场景 |
一个View的不同状态。比如一个页面在普通用户登录
时只能看到概要信息,而当管理用户登录时可以看到
详细信息,这是同一个view的两种不同状态。
|
用来控制差异很大的View之间的跳转和变迁。比如一个用户注册过程中的各个步骤。
|
技术实现 |
1. 需要一次初始化所有的components。
2. 基本上背后是一个MXML,内部component的较小变化。
3. 同上,基本对应一个数据。
|
1. 可以使用creationPolicy参数来控制延迟初始化。比如可以让stack中的每个view
在导航到它时才初始化。
2. 多个MXML之间的转移。
3. 同上,对应多个数据。
(当然,多个MXML和多个数据都不是必须的)
|
-- EOF --
PS: 我还是Flex菜鸟一个,理解不当之处请朋友们指正。
分享到:
相关推荐
Flex 实现viewstack简单切换。
使用viewstack切换登录的简单例子
flex开发中的一些小例子,这个是用viewstack控件开发的跳转功能
我跟WonJia打算写一个类似于《Flex编程注意之XX》的系列文章,此系列文章主要就是介绍一些我们在实际的项目中发现的一些Flex的问题,而这些问题可能已经被人发现了,也可能没被人发现,所以在此记录一下。
MXViewStackEffectExample FLEX切换效果
下载后,新建Flex Web工程,然后将文件按照文件夹结构拷贝进去后,编译,运行即可。但是主文件只需要拷贝内容,工程名字需要命名为testDemo。 功能包括 ViewStack的画面迁移 画面popup表示 鼠标在一览中滑动的事件...
对添加到State中的Object进行数据绑定 11.10节. 在State Changes事件中添加和删除事件监听器 11.11节. 添加视图States到Flash组件 11.12节. 处理StateChange 事件 11.13节. 动态生成States和Transitions 11.14节. ...
Table of Contents ...8.1基本组件使用[Tree,datagrid,TitleWindow,ViewStack] 40 8.2读写XML 40 8.3读写ShareObject 40 8.4 BlazeDS配置及使用 40 8.5 回溯 40 8.6 Event 40 8.7 代码优化 40 8.8 Demo 40
demo1工程源码 博文链接:https://momoko8443.iteye.com/blog/192423
文件有两个文档组成,Rotate3D.mxml为主文件,DistortionEffects.swc拷贝到libs下面,运行主文件即可,已经调试没有问题了,实现了ViewStack 切换的3D效果,很实用,不需要琐碎的代码,一看就懂!flex4也OK!
flex组件之容器类组件实例源码,包括according、viewstack等20个实例
ViewStack component for Silverlight 2 – An inevitable control in RIA space。
Marionette.Viewstack Marionette 的视图堆栈实现安装可能最好的选择是使用 bower 来安装 Marionette.ViewStack $ bower install --save marionette.viewstack或者如果你想与节点一起使用: $ npm install --save-...
NULL 博文链接:https://xiaoxiong0913.iteye.com/blog/712006
<mx:ViewStack id="viewStack" width="100%" height="75%" creationComplete="showData()" change="viewChanged(event)"> </mx:Box> </mx:ViewStack> ()"> <!--...
Efflex 。 提供多种 Flash 的 Canvas / Viewstack 的切换特效。 包括 3D 特效等。
1. a book Developing Flex Applications 2. a web page viewer for doc88 ebt 3. a DDA downloader for doc88.com CONTENTS PART I: Presenting Flex CHAPTER 1: Introducing Flex. . . . . . . . . . . . . . ...
在flex中切换界面很简单 大致有以下方式 1、viewStack切换,适合于模块内的界面切换 2、tab切换,适合于模块内的界面切换 3、使用module切换,适合于模块间的界面切换(就是不同的swf文件之间切换) 1和2 两种切换...