Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 Flex擦除状态转换?_Actionscript 3_Flex3 - Fatal编程技术网

Actionscript 3 Flex擦除状态转换?

Actionscript 3 Flex擦除状态转换?,actionscript-3,flex3,Actionscript 3,Flex3,我试图在两种状态之间创建一个简单的擦拭/滑动类型转换。类似于iphone从一个列表“滑动”到另一个列表的方式(即收件箱>邮件列表) 我似乎无法理解或找到关于如何使用2个简单的画布组件和转换来实现这一点的正确文档,其中一个从屏幕左侧滑出,另一个从右侧滑入 我用下面的代码得到了第二种状态“滑入”,但如何修改以同时“滑出”第一种状态 <mx:transitions> <mx:Transition fromState="summaryState" toState="detail

我试图在两种状态之间创建一个简单的擦拭/滑动类型转换。类似于iphone从一个列表“滑动”到另一个列表的方式(即收件箱>邮件列表)

我似乎无法理解或找到关于如何使用2个简单的画布组件和转换来实现这一点的正确文档,其中一个从屏幕左侧滑出,另一个从右侧滑入

我用下面的代码得到了第二种状态“滑入”,但如何修改以同时“滑出”第一种状态

<mx:transitions>
    <mx:Transition fromState="summaryState" toState="detailState">
    <mx:Parallel target="{contentCanvas}">
        <mx:WipeLeft duration="300"/>
    </mx:Parallel>
    </mx:Transition>
</mx:transitions>

提前感谢。

在上,他们提到您应该使用,并设置“fromState”和“toState”(您可以使用“*”定义状态)。我假设您的两个简单画布组件都处于自己的状态?如果是这样的话,一旦你设置了过渡,它应该能够发挥出你的效果。此外,链接的网站提到,效果可以按顺序或并行播放,这可能需要获得你想要的效果

编辑:

我做了一个小测试,这就是我想到的。它似乎在我的测试中起作用,因为两个画布都是动画的。我假设您使用的是setCurrentState(“newState”,true)。我希望这就是你想要的

<mx:transitions>
  <mx:Transition fromState="FirstState" toState="SecondState">
    <mx:Parallel>
      <mx:WipeLeft target="{CanvasA}" duration="300"/>
      <mx:WipeRight target="{CanvasB}" duration="300"/>
    </mx:Parallel>
  </mx:Transition>
</mx:transitions>

进一步编辑:
也可能有用。我认为您需要做的是,让两个画布都处于其中一个状态,然后执行它。也许您需要稍微重新安排您的状态,以便两个画布都处于一种状态,而目前我假定您将它们保持在不同的状态。

公共函数addTransitions():void { 变量转换:转换=新转换();
var move:move=new move()


}

直到我读了你的回复,我才意识到我的代码示例没有出现。我编辑它以显示。我想我的问题仍然是如何让第一个状态在第二个状态同时向右滑动时向左滑动。这非常有帮助-为了获得我想要的效果,我确实需要使用真实效果,并使用移动效果而不是擦拭效果来播放。我已经对我的答案进行了澄清,希望这就是你想要的。
  move.duration=400;
  move.targets = windowArray;

  transition.fromState = "*";
  transition.toState = "*";
  transition.effect = move;            

  // I was mising THIS line
  transitions.push(transition);