2012-01-04 95 views
2

如何在視頻結束時觸發事件?我想要顯示重播按鈕。AS3 - 視頻完成事件

var vid:Video = new Video(480, 270); 
vidcont.addChild(vid); 

    var nc:NetConnection = new NetConnection(); 
    nc.connect(null); 

    var ns:NetStream = new NetStream(nc); 
    vid.attachNetStream(ns); 

    var listener:Object = new Object(); 
    listener.onMetaData = function(evt:Object):void {}; 
    ns.client = listener; 

    function playVideo(e:Event = null) { 
    ns.play("sneak.flv"); 
    } 

感謝 烏利

回答

2

添加您NetStream對象上NetStatusEvent.NET_STATUS事件並檢查 「NetStream.Play.Stop」 代碼。

例子:

var ns:NetStream = new NetStream(nc); 
ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 

然後創建處理方法:

private function netStatusHandler(evt:NetStatusEvent):void { 
    if (evt.info.code == "NetStream.Play.Stop") { 
     // do loop... 
    } 
} 

如果您需要檢查一個以上的代碼,最好是使用一個開關的情況下,而不是如果的。

+0

非常感謝!是否也可以立即啓動和停止視頻,以便第一張圖像顯示? – Uli 2012-01-04 19:04:02

+0

您可以使用NetStream.seek()方法轉到影片中的特定時間,也許可以使用此方法執行此操作。 – 2012-01-04 23:08:59

+0

你能解釋一下這一點嗎?我只需要將NetStream.seek(1)添加到我的代碼中? – Uli 2012-01-05 12:37:56