2011-10-31 77 views
0

我正在自定义一个视频播放器(http://23video.com),并且我希望控件在鼠标静止或播放器外面后转换到屏幕外。目前,他们立即从屏幕上弹出。下面是移动控制功能:Flash视频播放器:转换控制放置

private function trayHide():void { 
    if (showPlayList) return; 
    trayTimer.stop(); 
    if(props.getNumber('trayTimeout')<=0) return; 
    tray.y = FlexGlobals.topLevelApplication.height - 74; 
    tray.visible = true; 
}    

有什么我能落实到位的“tray.y = FlexGlobals.topLevelApplication.height - 74;”让它在一两秒内转变高度变化?

PS:我基于此的视频播放器是https://github.com/23/videoplayer

回答

1

(首先,我写的代码为23的视频播放器,并想为tray.y线的混乱道歉,这是一个奇怪的一种硬编码。)

可以实现通过动画mx.effects.Move

在代码中添加这个地方:

import mx.effects.Move; 

而这个其他地方:

<mx:Move id="moveEffect" target="{tray}" duration="500" /> 

有了这些在地方,你可以代替tray.y线:

moveEffect.end(); 
moveEffect.yTo = FlexGlobals.topLevelApplication.height - 74; 
moveEffect.play(); 

除了这个简单的技巧,你需要先放在托盘预先正确;并确保它在动画时可见。

+0

可爱!谢谢Steffen。这工作很好。 –