【问题标题】:AS3 - FLVPlayback component completion handlerAS3 - FLVPlayback 组件完成处理程序
【发布时间】:2013-01-13 21:25:00
【问题描述】:

我有一个 FLVPlayback 组件,名为 flvPlayer 的实例。下面的代码在介绍场景的第 1 帧中,在 Flash CS5 中工作得非常好,但在 CS6 中却不行! 显然我希望视频播放器在视频结束时跳转到下一个场景。

import fl.video.*;

flvPlayer.source = "videos/1.flv";

flvPlayer.addEventListener(VideoEvent.COMPLETE, completeHandler);

function completeHandler(event:VideoEvent):void
{
    MovieClip(this.root).gotoAndPlay(1, "mainScene");
}

在 CS6 中,它给了我这个编译错误:

【问题讨论】:

    标签: actionscript-3 event-handling flvplayback


    【解决方案1】:

    可能不是CS5或CS6的问题,而是flash的目标运行时版本的问题。

    VideoEvent.COMPLETE 在 flash 10.1 及以下版本中定义。

    尝试使用Event.COMPLETE 而不是VideoEvent.COMPLETE(来自this discussion

    【讨论】:

    • 我也不得不将函数 completeHandler(event:VideoEvent):void 更改为 Event .. :D
    【解决方案2】:

    我怀疑最新的 CS6/Flash 内容存在奇怪的命名空间问题。尝试将所有 VideoEvent 引用替换为其完整命名空间 fl.video.VideoEvent

    import fl.video.*;
    
    flvPlayer.source = "videos/1.flv";
    
    flvPlayer.addEventListener(fl.video.VideoEvent.COMPLETE, completeHandler);
    
    function completeHandler(evt:fl.video.VideoEvent):void
    {
        MovieClip(this.root).gotoAndPlay(1, "mainScene");
    }
    

    【讨论】:

    • 这修复了它,但 loxxy 提供的另一个答案也是正确的并解决了问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-03
    • 2015-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多