簡體   English   中英

AS3中的動態對象名稱

[英]Dynamic Object Name in AS3

我的MXML項目中有此代碼,我想為不同的動態用戶名獲得動態Stream連接

private var inStream:NetStream;

private function listenStream(user:String):void
            {

                this["inStream"+user] = new NetStream(connection);
                this["inStream"+user].play(user);

            }

private function closeStream(user:String):void
        {

                //clear stream listener
                this["inStream"+user].close();


        }

但是此代碼不起作用,如何在ActionScript3中構建動態對象名稱?

非常感謝

嘗試字典

import flash.utils.Dictionary

private var streamDict:Dictionary = new Dictionary();

private function listenStream(user:String):void
{
      var key:String = getKey(user);

      var lastStream:NetStream = streamDict[key] as NetStream;

      if (lastStream)
      {
          //close the last stream or do sth else
      }
      else
      {
         streamDict[key] = new NetStream(connection);
         streamDict[key].play(user);
      }

 }

 private function closeStream(user:String):void
 {
      var key:String = getKey(user);

      //clear stream listener
      var stream:NetStream = streamDict[key] as NetStream ;

      if (stream)
      {
          stream.close();
      }

      //delete the stream
      streamDict[key] = null;
      delete streamDict[key];
 }

 private function getKey(user:String):String
 {
      return  "inStream" + user;
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM