`
demojava
  • 浏览: 553697 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

flex Transition

阅读更多
Transition 类常用的属性
fromState:String 表示开始进行过渡的状态,默认值为"*",代表任何一种视图状态
toState:String   表示结束进行的视图状态,默认值为"*" ,代表任何一种视图状态
effect : IEffect     应用过渡时要播放的 IEffect 对象。

1.定义多个过渡效果(注意需要定义多个Transition必须在 <mx:transitions>节点中而且 <mx:transitions>节点只能出现一次)
<mx:transitions>
<mx:Transition id="tran1" fromState="*" toState="demo2" />
<mx:Transition id="tran2" fromState="*" toState="*" />
<mx:transitions>

2.定义目标效果
例如:其中 Parallel 同时播放多个子效果。
  
 
<mx:transitions>
	<mx:Transition id="myTransition" fromState="*" toState="*">
		<mx:Parallel id="t1" targets="{[p1,p2,p3]}" >
			<mx:Move duration="400" />
			<mx:Resize duration="400" />
		</mx:Parallel >	
	</mx:Transition>
    </mx:transitions>


3.在过渡中控制行为效果
//要定义过渡,可将应用程序的过渡属性设置为 Transition 对象的数组。
过度中的行为效果
行为效果 对应的视图状态 使用
SetPropertyAction SetProperty 设定属性值为过渡中的一部分
SetStyleAction SetStyle 设定样式为过渡样式的一部分
AddChildAction AddChild 增加子类为过渡的一部分
RemoveChildAction RemoveChild 删除子类为过渡的一部分
例如:
<mx:states>
	<mx:State name="state1">
		<mx:SetProperty target="{P2}" name="visible" value="false" />
		<mx:SetProperty target="{P2}" name="title" value="asdfasdf" />
	</mx:State>
</mx:states>

// 定义myTransition1的过渡应用从基础状态改变到 myTransition2 状态
<mx:Transition id="myTransition1" fromState="*" toState="myTransition2">
	<mx:Parallel id="t1" targets="{[p1,p2,p3]}" >
		<mx:Move duration="400" />
		<mx:Resize duration="400" />
	</mx:Parallel >	
</mx:Transition>

// 定义 myTransition2 的过渡应用从基础状态改变基础状态
<mx:Transition id="myTransition2" fromState="*" toState="*">
	<mx:Parallel id="t1" targets="{[p1,p2,p3]}" >
		<mx:Move duration="400" />
		<mx:Resize duration="400" />
	</mx:Parallel >	
</mx:Transition>


4.过滤过渡效果使用(Filtering )
在默认情况下,flex的应用一个过渡中的效果到所有组件上,如果需要限制效果应用在所有的目标组件上
只能用对应在目标组件上,则需要使用过滤(Filtering)
Filtering 可能的值有
add 在视图状态改变的过程中,在使用增加子类上显示的效果
hide 在视图状态改变的过程中,在使用子类 visible 属性从true,改变到false时显示的效果
move 在视图状态改变的过程中,在使用子类x和y属性改变是显示的效果
remove 在视图状态改变的过程中,在使用删除子类
resize 在视图状态改变的过程中,在使用子类width和height属性改变时显示的效果
show 在视图状态改变的过程中,在使用子类 visible 属性从false,改变到true时显示的效果

   <mx:states>
		  <mx:State name="state2">
			<mx:SetProperty target="{p1}" name="visible" value="false" />
			<mx:SetProperty target="{p2}" name="visible" value="true" />
			<mx:SetProperty target="{p3}" name="visible" value="true" />

			<mx:SetProperty target="{p2}" name="x" value="0" />
			<mx:SetProperty target="{p2}" name="y" value="0" />
			<mx:SetProperty target="{p3}" name="x" value="0" />
			<mx:SetProperty target="{p3}" name="y" value="110" />
		 </mx:State>
		<mx:State name="state3">
			<mx:SetProperty target="{p1}" name="visible" value="true" />
			<mx:SetProperty target="{p2}" name="visible" value="false" />
			<mx:SetProperty target="{p3}" name="visible" value="true" />

			<mx:SetProperty target="{p1}" name="x" value="0" />
			<mx:SetProperty target="{p1}" name="y" value="110" />
			<mx:SetProperty target="{p3}" name="width" value="0" />
			<mx:SetProperty target="{p3}" name="height" value="0" />
		 </mx:State >
    </mx:states>


    <mx:transitions>
	<mx:Transition id="myTransition" fromState="*" toState="*">
		<mx:Sequence id="sequ1" targets="{[p1,p2,p3]}" >
			<mx:Sequence id="sequ2" filter="hide">
			<mx:WipeUp />
			<mx:SetPropertyAction name="visible" value="false" />
			</mx:Sequence >
			<mx:Move filter="move" />
			<mx:Sequence id="sequ3" filter="show">
			<mx:WipeUp />
			<mx:SetPropertyAction name="visible" value="true" />
			</mx:Sequence >
 		</mx:Sequence>
	</mx:Transition>
    </mx:transitions>
    
    <mx:Canvas id="pm" width="100%" height="100%" >
	<mx:Panel id="p1" title="one" x="0" y="0" width="100" height="100" click="{currentState=''}"  >
		<mx:Label fontSize="24" text="One" />
	</mx:Panel>
	<mx:Panel id="p2" title="Two" x="0" y="110" width="100" height="100" click="{currentState='state2'}"  >
		<mx:Label fontSize="24" text="two" />
	</mx:Panel>
	<mx:Panel id="p3" title="Two" x="110" y="0" width="200" height="210" visible="false" click="{currentState=''}"  >
		<mx:Label fontSize="24" text="three" />
	</mx:Panel>
    </mx:Canvas>

--登录的效果
  
 <?xml version="1.0"?>
<!-- Simple example to demonstrate the Repeater class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Script>
        <![CDATA[
        
            import mx.effects.easing.Bounce;
  
        ]]>
    </mx:Script>
    <mx:transitions>
	<mx:Transition>
			<mx:Parallel targets="{[LoginPanel,registerLink,loginBtn,confirm]}" >
				<mx:Resize duration="500" easingFunction="{Bounce.easeOut}" />
				<mx:Sequence target="{confirm}" >
					<mx:Blur duration="200" blurYForm="1.0" blurYTo="20.0" />
					<mx:Blur duration="200" blurYForm="20.0" blurYTo="1.0" />
				</mx:Sequence>
			</mx:Parallel>
	</mx:Transition>
    </mx:transitions>
    <mx:states>
	    <mx:State name="Register">
		<mx:AddChild relativeTo="{loginForm}" position="lastChild" > 
			<mx:FormItem id="confirm" label="确认:">
				<mx:TextInput/>
			</mx:FormItem>
		</mx:AddChild>
		<mx:SetProperty target="{loginPanel}" name="title" value="注册" />
		<mx:SetProperty target="{loginBtn}" name="label" value="注册" />
		<mx:RemoveChild target="{registerLink}" />
		<mx:AddChild relativeTo="{spacer1}" position="before" > 
			<mx:LinkButton label="回到登录页面" click="{currentState=''}" />
		</mx:AddChild>
	    </mx:State>
    </mx:states>
    <mx:Panel title="登录" id="LoginPanel" >
    <mx:Form id="loginForm">
	<mx:FormItem  label="用户名:">
				<mx:TextInput/>
	</mx:FormItem>
	<mx:FormItem  label="密码:">
				<mx:TextInput/>
	</mx:FormItem>
    </mx:Form >
    <mx:ControlBar>
    	<mx:LinkButton id="registerLink " label="注册" click="{currentState='Register'}" />
	<mx:Spacer width="100" />
	<mx:Button label="登录" id="loginBtn" />
    </mx:ControlBar>
        </mx:Panel >
</mx:Application>
分享到:
评论

相关推荐

    FLEX入门实例--------transition,state的综合运用

    在本实例中,我们将深入探讨Adobe Flex中的"transition"(过渡)和"state"(状态)的概念,这两个概念是创建动态且交互性丰富的用户界面的关键元素。Flex是一种用于构建富互联网应用程序(RIA)的开放源代码框架,它...

    Flex 布局变化时的动画效果解析 简单版

    总之,Flex布局动画主要依赖于CSS的`transition`和`animation`属性,它们能帮助我们在Flex元素变化时创建流畅的过渡效果。通过实践和调试,开发者可以创造出各种各样的动态Flex布局,提升网站的视觉吸引力和用户体验...

    flex翻书效果 flex翻书效果

    利用`transition`属性添加平滑过渡。 3. JavaScript交互:监听用户事件,如点击或拖动,根据手势计算翻页角度,更新CSS样式中的`transform`属性,模拟翻页动作。 三、关键CSS技术 1. `transform`:通过`rotateY()`...

    flex中文帮助文档

    文档会介绍Animate和Transition类的使用。 8. **事件处理**:Flex事件模型是其交互性的核心。文档会解释事件的生命周期、事件监听器和自定义事件的创建。 9. **Flex Builder/IDE集成**:如果文档是针对Adobe Flex ...

    flex4 开发文档

    6. **动画和效果**:讲解Flex 4中的动画机制,包括使用Animate和Transition类创建复杂的视觉效果。 7. **服务和通信**:讨论如何使用HTTPService、WebService、AMFChannel等与服务器进行数据交换,以及如何集成第三...

    flex sample-跳转

    你还可以通过设置`transition`属性来添加过渡动画,增强用户体验。例如,你可以设置`ViewStack`的`change`事件,当视图切换时触发特定的动画效果。 总结来说,"flex sample-跳转"项目展示了Flex开发中ViewStack控件...

    flex 广告图片切换

    使用 CSS 的 `transition` 和 `animation` 属性可以实现平滑的图片切换效果,例如淡入淡出、滑动等。 8. **响应式设计**: 为了适应不同设备和屏幕尺寸,可以使用媒体查询(media queries)来调整 Flexbox 的布局...

    flex图片放大缩小

    transition: transform 0.3s; /* 添加平滑过渡效果 */ } ``` ```javascript document.getElementById('image').addEventListener('click', toggleZoom); document.getElementById('image').addEventListener('...

    Flex Builder Plug-in and Adobe

    The transition from Flex Builder to Eclipse as the primary development environment is a common one, particularly in teams with a strong Java background. This shift leverages the flexibility and ...

    刚学会Flex自己做的一个简单的聊天室

    - Flex动画和效果:利用Animate或Transition效果,增加交互的动态性。 - Flex数据服务:与后端服务器进行更复杂的数据交互,如AMF通信、 BlazeDS集成。 - 移动设备支持:学习如何为移动平台(如Android、iOS)...

    flex aladino 图片展示特效

    - `transition`:添加过渡效果,增加视觉吸引力,例如改变透明度或大小。 要将"Aladino"特效从纵向改为横向,我们需要调整容器的`flex-direction`属性,并可能需要调整`justify-content`和`align-items`以适应新的...

    flex 百叶窗效果

    Flex百叶窗效果是一种在网页设计中常见的动态视觉效果,主要利用CSS3的Flexbox布局模型来实现。这种效果通常用于展示一组元素,如图片或卡片,通过改变它们的顺序和透明度,模拟出百叶窗打开或关闭的动画。在本文中...

    Flex4 Declarations in ActionScript

    《Flex4声明式编程在ActionScript中的应用探析》 Flex4是Adobe Flex框架的一个重要版本,它引入了全新的ActionScript编程模型,显著提升了开发效率和应用程序的表现力。本篇文章将深入探讨Flex4中的一项核心特性...

    Flex开发Android 更改ViewMenu外观

    4. **动画效果**:Flex还支持添加过渡和动画效果,通过`&lt;mx:Transition&gt;`或`&lt;s:Transition&gt;`标签定义打开、关闭等行为的动画。这可以增加用户体验的流畅性。 5. **事件处理**:在更改ViewMenu外观的同时,可能还...

    FLEX弹出框特效,很好很强大

    利用`transition`和`animation`属性,可以控制弹出框出现和消失的速度及样式。 6. **Flexbox 3.0的改进**:Flexbox 3.0相较于早期版本,提供了更全面的浏览器支持和一些新特性。例如,`align-content`属性允许在...

    flex倒影效flex倒影效果

    使用`transition`属性可以实现鼠标悬停时倒影的动态变化,增强交互体验。 6. **响应式设计**:为了确保在不同设备和屏幕尺寸上效果一致,可以结合媒体查询(`@media`)进行调整,确保倒影效果在各种环境下都能良好...

    FLEX 鱼眼菜单,点击菜单3D旋转效果切换页面

    同时,可能使用了`transition`属性来平滑地过渡这些变换,提升用户体验。 3D旋转效果是通过CSS3的`transform`属性中的`rotateX`, `rotateY`或`rotateZ`实现的。在页面切换时,3D旋转不仅可以为用户提供视觉上的吸引...

    flex 图片预览

    4. 可能还使用了CSS3的`transform`和`transition`属性来实现平滑的缩放和移动效果。 项目的三种不同布局和功能差异化设计可能包括: 1. 图片网格布局:适合展示多张图片,用户可以通过点击预览大图。 2. 滑动预览...

Global site tag (gtag.js) - Google Analytics