2010-06-08 59 views
0

我有下面的代码:检查首歌是缓冲在AS3

var song:Sound; 
var sndChannel:SoundChannel; 
var context:SoundLoaderContext = new SoundLoaderContext(2000); 

function songLoad():void { 
    song.load(new URLRequest(songs[selected]),context); 
    sndChannel = song.play(); 
} 

现在我希望能够检查,如果这首歌缓冲与否。有没有办法做到这一点?或者我应该采取不同的方式?

回答

0

似乎可以使用Sound对象的isBuffering属性。

也许你可以定期用Timer或Event.EnterFrame监听器来检查它,只要声音没有被完全下载(即直到Event.COMPLETE触发)。在那之后,检查isBuffering是没有意义的,原因很明显,所以你可以删除Timer或EnterFrame。

+0

我不敢相信我忽略了那个属性。 非常感谢! – sirxemic 2010-06-09 11:39:22