我正在自定义一个视频播放器(http://23video.com),我希望控制器在鼠标静止或播放器外部转换到屏幕外。此刻,他们立即弹出屏幕。这是移动控件的功能:
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。
答案 0 :(得分: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();
除了这个简单的技巧之外,您还需要事先正确放置托盘;并确保它在动画时可见。