書上對於NetStream.client中的client屬性寫的有點模糊...
似乎是要處理 onMetaData 的問題,但是還是不是很明白...
我分別在兩本書上看到不同寫法:
1. NetStream.client={};
NetStream.client.onMetaData = function(info:Object){
var duration:Number = info.duration;
2. NetStream.client=this;
這兩個寫法測試的結果是都不會跑出 onMetaData 的錯誤問題
但是小弟我還是不知道為何要這樣寫,分別有什麼意思呢?
還有,第一種寫法如果只打 NetStream.client={}; 這一行,好像也不會有錯誤發生...
{},單打這樣,基本上就是個objectNetStream.client=new Object() 的意思然後這個物件上的onMetaData屬性設定一個function在AS上這種應該是屬於比較舊式的寫法了?如果是用AS3,嘗試宣告一下NetStream物件跟設定Event可能才會呼叫得到,不然可能會有各種意外發生
那請問第二種方法只用this,此時this是什麼意思?
第二個中的this = 物件本身 : 你寫這段code所在的物件通常第二個寫法..就是要再寫一個public methodonMetaData這個方法...並接收一個object參數兩個做法的事情是一樣..要把ns的client指定一個對象在有了對象之後..設定onMetaData這個func好讓串流在連線後要播放時..將串流的metadata傳入
可是書上確實只有一行,沒有特別寫onMetaData而也沒有跑出錯誤
onMetadata我記得不一定要收..所以沒有錯誤正常
了改,感謝各位!那再請教一下...Video.attachNetStream(null);為什麼給null了,畫面是不會動,但是聲音依然在播放
你丟null進去是想...暫停?attach...印象中會疊加
是想讓按鈕按下,關閉影片我知道NetStream.close()可以關閉只是不解為何書上要先給null,然後再close是為了釋放記憶體嗎?
null 是要清除影像 不然你會有video最後一張的畫面