2009-09-17 87 views
0

好的,这个驱动器是我的屁股。我在CS4中制作了一个自定义视频播放器。基本上,我只是用The Gimp来画一个视频播放器并将它保存为一个PNG,然后我将它拖到舞台上。Flash ComboBox停止播放流AS3

我不想使用FLVPlayback,所以我使用Actionscript为舞台添加一个视频。

var video:Video = new Video(480,360); 
addChild(video); 

我会告诉你我是如何迷上它的细节,但它完美的作品。当我试图将一个ComboBox拖到舞台上时,问题就开始了。在添加任何处理程序或任何东西之前,如果从ComboBox中选择一个项目,它会在我的Video(和NetStream)上终止播放。奇怪!为什么?我如何避免这样做?

+0

如果我在NetStream上添加了NetStatusEvent处理程序,在更改了ComboBox上的选择后它不会报告任何内容,但是我可以看到该流在服务器端停止播放。 – 2009-09-17 18:46:20

回答

0

好吧,我现在感觉非常聪明,现在我明白了这一点。当然,我本来更聪明的是没有首先引起错误。这是垃圾收集的问题,完全与ComboBox无关。点击ComboBox,结果,只是造成足够的对象垃圾触发垃圾收集器。

我的NetStream正在死亡而没有触发事件处理程序,因为它正在被垃圾收集。我在代码中没有提及它。我不认为我必须这么做,因为我打电话给video.attachStream(ns),并且持有对video的引用。但是,Video类显然不包含对NetStream的引用。