zoukankan      html  css  js  c++  java
  • Flex中States的用法

    States 是一套用于创建状态组件的强大工具,也就是说组件可以有多个视图。
    使用States来切换视图可以节约资源.
    在Flex 程序中,引入了状态设计的概念。在一个程序中,按照功能的需求,将界面切分成相对独立的部分。运行过程中,随着用户交互,界面在各个部分之间切换。比如在购物车程序中,登录界面、选购商品界面、购物车界面、付款界面,这些部分代表着不同的功能,显示当前程序的运行状态,每个界面便是一个状态(Status)。
    在一个复杂的程序中,将程序按照功能进行结构划分是非常重要的,这样,问题会变得明了,这也是使用状态设计的原因。
    其实,我们和状态打过很多交道,只不过没有把它理论化。比如,鼠标的点击动作,也是由几个状态组成的:鼠标移上、鼠标按下、鼠标松开、鼠标移开。用这种视角来分析问题,条理就很清楚,不容易陷入令人烦恼的逻辑纠纷中。
    当状态发生改变时,我们可以为两个状态的切换添加形变动画。形变动画由若干个动画效果组成,可以理解为:状态的切换也是行为的一种,因此,形变动画的创建和使用与行为一样,非常简单。
    在Flex中,状态的创建也是很简单的。我们不需要花费时间在界面的设计上,也不用去关心状态的运作方式,这些都由Flex来完成。
    所有的组件都实现了状态机制,一般情况下,容器类组件或有容器特色的组件和状态机制是最佳组合,这样状态机制就可以控制程序的一个功能块。
     
    在State对象可以使用如下方法:
     SetEventHandler:设置对象某一事件的监听方法
     SetProperty:设置对象的属性
     SetStyle:设置对象的样式
     AddChild:向对象添加一个子级元素
     RemoveChild:删除一个子级元素
     Transition:设置状态的过渡动画效果
    当程序或组件切换到目标状态时,里面添加的方法就会被自动调用。
    <mx:states>
     <mx:State name="RectifyState">
    <mx:SetEventHandler  target="{tile}"  name="itemClick"  handlerFunction="clicRectify"/>
    </mx:State>
    <mx:State name="RecheckState">
    <mx:SetEventHandler target="{tile}"  name="itemClick"  handlerFunction="clicRecheck"/>
    </mx:State>
    </mx:states>
    <mx:transitions>
    <mx:Transition fromState="" toState="comp">
    <mx:Parallel target="{tile}" duration="500">
    <mx:WipeRight/>
    </mx:Parallel>
    </mx:Transition>
    <mx:Transition fromState="comp" toState="">
    <mx:Parallel target="{tile}" duration="500">
    <mx:WipeRight/>
    </mx:Parallel>
    </mx:Transition>
    </mx:transitions>
  • 相关阅读:
    JavaScript严谨模式(Strict Mode)提升开发效率和质量(转载)
    如何调用.Net中的非Public方法
    ViewState机制由浅入深1
    使用SQL向SQL Server2005中插入图片
    ViewState机制由浅入深3
    在服务器端修改HTML控件的属性
    ViewState机制由浅入深2
    IsPostBack深入探讨
    关于架构的小整理,仅限于个人
    关于文件操作的小方法
  • 原文地址:https://www.cnblogs.com/x38160/p/3228961.html
Copyright © 2011-2022 走看看