`

Flex4 切换States实现3D旋转效果

阅读更多
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx"
               minWidth="955"
               minHeight="600"
               backgroundColor="0x747474"
               creationComplete="application1_creationCompleteHandler(event)" viewSourceURL="srcview/index.html">
    <s:layout>
        <s:BasicLayout/>
    </s:layout>
    <s:states>
        <s:State name="s1"/>
        <s:State name="s2"/>
    </s:states>
    <s:transitions>
        <s:Transition fromState="*"
                      toState="s2">
            <s:Sequence target="{myGroup}">
                <s:Parallel>
                    <s:Fade target="{p2}"
                            alphaFrom="1"
                            alphaTo="0"
                            duration="600"/>
                    <s:Fade target="{p1}"
                            alphaFrom="0"
                            alphaTo="1"
                            duration="600"
                            effectEnd="fade1_effectEndHandler(event)"/>
                    <s:Rotate3D angleYFrom="0"
                                angleYTo="180"
                                duration="600"
                                repeatCount="1"
                                autoCenterTransform="true"/>
 
                </s:Parallel>
                <s:SetAction property="includeInLayout"/>
            </s:Sequence>
 
        </s:Transition>
 
        <s:Transition fromState="s2"
                      toState="*">
            <s:Sequence target="{myGroup}">
                <s:Parallel>
                    <s:Fade target="{p1}"
                            alphaFrom="1"
                            alphaTo="0"
                            duration="600"/>
                    <s:Fade target="{p2}"
                            alphaFrom="0"
                            alphaTo="1"
                            duration="600"
                            effectEnd="fade2_effectEndHandler(event)"/>
 
                    <s:Rotate3D angleYFrom="{angle}"
                                angleYTo="{angle+180}"
                                duration="600"
                                repeatCount="1"
                                autoCenterTransform="true"/>
 
                </s:Parallel>
                <s:SetAction property="includeInLayout"/>
            </s:Sequence>
        </s:Transition>
    </s:transitions>
 
    <fx:Script>
        <![CDATA[
            import mx.events.EffectEvent;
            import mx.events.FlexEvent;
            [Bindable]
            private var angle:Number=0;
            protected function button1_clickHandler(event:MouseEvent):void
            {
                switch (this.currentState)
                {
                    case "s1":
                    {
                        this.currentState='s2';
                        angle=0;
                        break;
                    }
                    case "s2":
                    {
                        this.currentState='s1';
                        angle=180;
                        break;
                    }
                }
 
            }
            protected function application1_creationCompleteHandler(event:FlexEvent):void
            {
                this.vidPlay2.source="assets/002.flv";
                this.vidPlay2.play();
            }
            protected function fade1_effectEndHandler(event:EffectEvent):void
            {
                this.vidPlay1.source="assets/001.flv";
                this.vidPlay1.play();
                this.vidPlay2.source=null;
            }
            protected function fade2_effectEndHandler(event:EffectEvent):void
            {
                this.vidPlay2.source="assets/002.flv";
                this.vidPlay2.play();
                this.vidPlay1.source=null;
            }
        ]]>
    </fx:Script>
    <s:Group id="myGroup"
             horizontalCenter="0"
             verticalCenter="0"
             width="400"
             height="400">
        <s:Group width="100%"
                 height="100%"
                 id="p1">
            <s:VideoPlayer id="vidPlay1"
                           left="0"
                           right="0"
                           top="0"
                           bottom="0"
                           autoPlay="false"
                           includeInLayout.s1="false"/>
        </s:Group>
        <s:Group width="100%"
                 height="100%"
                 id="p2">
            <s:VideoPlayer id="vidPlay2"
                           left="0"
                           right="0"
                           top="0"
                           bottom="0"
                           includeInLayout.s2="false"/>
        </s:Group>
    </s:Group>
    <s:Button label="Change State"
              click="button1_clickHandler(event)"
              horizontalCenter="0"
              verticalCenter="250"/>
 
</s:Application>
 
  • 大小: 67.3 KB
2
6
分享到:
评论

相关推荐

    Flex4 3D旋转效果

    在提供的压缩包文件"3dRotation-3D旋转效果"中,可能包含了示例代码、教程文档或其他资源,用于帮助进一步理解和实现Flex4的3D旋转效果。通过研究这些材料,你将能够更深入地掌握3D编程在Flex4中的应用。

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

    在这个场景中,我们讨论的是一个使用FLEX实现的具有3D旋转效果的鱼眼菜单,当用户点击菜单项时,页面会以3D旋转的方式进行切换。 首先,我们需要了解FLEX布局的基础知识。FLEX布局允许开发者设置容器内的子元素如何...

    Flex 3D切换效果

    "Flex 3D切换效果"是指在Adobe Flex框架下实现的3D转换效果,它使得应用程序的界面元素在用户交互时能够呈现出立体的翻转或旋转效果。这种效果通常用于导航菜单、卡片式布局或者像登录界面中的按钮点击反馈,为用户...

    rotate.zip旋转登录框,实现3d效果,flex

    这个“rotate.zip”压缩包中的内容显然是关于使用Flex来实现一个具有3D旋转效果的登录框,这对于提升用户体验和界面美观度非常有帮助。以下是关于Flex、3D效果和自定义控件的相关知识点的详细介绍: 1. **Flex框架*...

    flex实现旋转效果

    在本文中,我们将深入探讨如何使用Flex来实现一个图片旋转效果,这在产品展示或交互式界面设计中非常常见。Flex是一种强大的、基于XML的框架,用于构建富互联网应用程序(RIA),尤其适用于创建动态、响应式的用户...

    Flex开发的类似3d屏风展示效果,供参考学习用

    2. **3D转换和动画**:在Flex 4引入的Spark组件模型中,可以通过使用`Transform`类和`AnimateTransform`动作来实现3D转换和动画效果。这包括旋转、缩放和平移等操作,可以创建出屏幕面板在空间中翻转的效果。 3. **...

    效果3D旋转的源码

    在本文中,我们将深入探讨如何实现“效果3D旋转”的源码,特别是在FLEX这个强大的开发框架中的应用。FLEX,全称为Adobe Flex,是一种用于构建富互联网应用程序(RIA)的开源框架,它允许开发者创建具有高度交互性和...

    flex4可用的3D页面切换

    本项目聚焦于Flex 4中的3D特性,特别是针对页面切换的创新实现。 在Flex 4中,3D功能的增强使得开发者能够创建出具有深度和动态效果的应用程序。"flex4可用的3D页面切换"这一主题,意味着我们将探讨如何利用这些3D...

    flex旋转3D

    在本文中,我们将深入探讨如何使用Adobe Flex实现3D物体的旋转效果,以及如何通过鼠标交互来控制这种旋转。Flex是一种强大的开发框架,主要用于构建富互联网应用程序(RIA),它允许开发者使用ActionScript 3和MXML...

    flex 360度旋转小人,模拟3D效果

    在本文中,我们将深入探讨如何使用Adobe Flex技术来创建一个360度旋转的小人模型,从而实现模拟3D效果的交互式应用。Flex是一种基于ActionScript 3.0的开源框架,它允许开发者构建富互联网应用程序(RIA),提供丰富...

    flex3d效果展示

    在文件名“Flex3d动画引擎_效果展示”中,我们可以推断出这是一个关于Flex3D动画引擎的示例或教程,可能包含了如何创建和控制3D动画的详细步骤,以及如何实现特定效果的代码片段。学习这样的资源,开发者可以更好地...

    Flex视图切换 旋转效果

    实现缩略图切换旋转效果,代码里面有layout可以自己实现上下左右四面布局。现在默认只是实现了左侧栏 缩略图,中间主视图效果,点击缩略图放大,原有视图缩小变成缩略图。 愿意下就下别骂人1分你评价一下也就回来了...

    Flex 3D圆形隧道效果

    在Flex中实现3D效果,可以让开发者创建出更为生动和立体的交互体验。 在Flex中实现3D圆形隧道效果,需要掌握以下几个关键知识点: 1. **3D图形基础**:首先,了解基本的3D坐标系统和几何概念是必要的,如顶点、...

    flex中在同一界面实现切换效果

    在flex中在同一界面实现切换效果,代码简单,易懂。

    flex3D效果

    Flex3D效果是一种在Flash平台上实现的立体三维(3D)视觉展示技术,它使得开发者能够在Web上创建出富有交互性和动态性的3D图形应用。这个"flex3D效果"项目是一个专门用于浏览图片的3D展示应用,用户可以通过它在...

    flash 实现图片3d层叠切换效果

    4. **切换效果**:根据XML数据,改变图片容器的位置和旋转角度,模拟3D层叠效果。可能涉及到平滑过渡动画,比如使用Tween类或TimelineCSM进行动画控制。 5. **事件监听**:添加事件监听器来响应用户交互,如点击或...

    Demo.rar_3d_flex_flex Graphic._pv3d flex_pv3d fl

    4. **相机控制**:允许用户从不同角度查看3D场景,通过平移、旋转和缩放操作实现3D视角的自由切换。 5. **动画系统**:通过时间轴或关键帧实现3D对象的平滑运动和动画效果。 6. **交互性**:结合ActionScript,使...

    flex4 3D特效

    6. **预设3D效果**: Flex 4还提供了一些预设的3D效果,比如“翻转”、“旋转”等,可以直接应用于组件,快速实现3D转换效果。 7. **自定义3D组件**: 开发者可以通过继承现有的Spark组件并重写其绘制方法,来创建...

    Flex4.5做的3D网页效果展示墙

    在Flex4.5中,使用Spark Effects库可以实现这种效果,例如通过Transform3D类进行复杂的3D旋转和平移,使得元素有如从画面深处走出来或消失到画面深处的感觉。 “视频播放效果墙”则是将多个视频以3D方式排列展示,...

    Flex4 电视墙效果

    10. **深度缓冲和层叠**:为了实现3D效果,可能需要利用Flex4的深度缓冲和层叠特性,让某些元素在视觉上位于其他元素之前或之后。 通过以上知识点的组合运用,开发者可以创建出功能丰富、用户体验优秀的Flex4电视墙...

Global site tag (gtag.js) - Google Analytics