访问另一帧中的数组元素



我已经在第1帧中创建了一个数组,并动态地创建了一个带有它的电影剪辑列表,我想在第3帧和那些电影剪辑中再次创建相同的数组,如果某事为真或假。这可能吗?因为当我尝试这样做时,我会得到这个错误:

在命名空间internal中与定义i存在冲突。这是我在第1帧的代码:
stop(); 
import flash.display.MovieClip;
var p_x:uint = 90;
var p_y:uint = 108;
var my_list:String = "Games,Videos, Medias,Images,Photos,Personal Photos,Social                  Media,Private,Social,None,Names,Families";
var myListString:Array = my_list.split(",");
var myArray:Array=new Array ();
var listObject = 1;
for (var i:uint=0; i<12; i++)
{
    var myItemList:mrb=new mrb();
    myItemList.x = p_x;
    myItemList.y = p_y + 80;
    myItemList.y = (p_y + (listObject * 65));
    myArray.push(myItemList);
    myItemList.txt.text = i.toString();
    myItemList.txt.text = myListString[i].toString();
    myItemList.name = "item"+i; 
    addChild(myItemList) as MovieClip ;
    listObject++;
}

,这里是第3帧的代码:

    var tmpCurFrame:int = currentFrame;
    this.addEventListener(Event.ENTER_FRAME, handleUpdate)
        function handleUpdate(e:Event):void {
        if (tmpCurFrame != currentFrame) {
          this.removeEventListener(Event.ENTER_FRAME, handleUpdate);
                    return;
                }
               if (so.data.fav1 != undefined) 
    {
    if ( so.data.fav1 == "on") 
    {
    for (var i:int = 0; i < myListString.length;)
{    if (myListString[i].indexOf() > -1)
        {
    var myRectangle:mrb=new mrb();
            trace("found it at index: " + i);
            myRectangle.x = p_x;
            myRectangle.y = (p_y + (findobject * 50));
            trace('p_y+80 =' + (p_y+(findobject*80)) + 'p_x = ' + p_x );
            myArray.push(myRectangle);
            myRectangle.txt.text = myListString[i].toString();
            trace(my_array2[i].toString() );
            addChild(myRectangle);
          }
        }
      }      
    }
    else
    {
    fav_1.fav_on.visible=true;
       }
  }

这个错误信息仅仅意味着你使用了两次相同的变量i,你只需要给它们不同的名字。

最新更新