Voy a "reordenar" tu código
Código ActionScript :
//primero hacemos el bucle
for (var i:Number =0; i < xmlPlay.music.length(); i++) {
var list = this["Playlist_Lista" + i];
list = new Playlist_Lista();
list.x = 22;
list.y = i * 21 + 74;
list.Nombre_txt.text = xmlPlay.music.nombre[i];
list.addEventListener(MouseEvent.CLICK , OverList);
miPlayList.addChild(list);
}
//FUERA del bucle definimos la función
function OverList() {
var AlphaButton:Tween = new Tween(list,"alpha",None.easeOut, .2, 1,1, true);
}
La he puesto fuera porque ponerla dentro sólo haría que redefinirse la función.
Vemos que, dentro de la función OverList NO existe la variable "list", así que este código no va a funcionar.
Vamos a ponerlo en funcionamiento:
Sí, hay algo que está mal en el código y es que, cualquier función relacionada con un addEventListener TIENE un argumento que es de la clase de Evento que se haya metido. Vamos, sería
Código ActionScript :
//FUERA del bucle definimos la función
function OverList(e:EventMouse) { //<--el argumento es "e" y es de la Clase EventMouse
var AlphaButton:Tween = new Tween(list,"alpha",None.easeOut, .2, 1,1, true);
}
Vemos que es de la Clase EventMouse. si lo que hubiéramos añadido es un listener de tipo Event.ENTER_FRAME, el argumento sería de la clase "Event"
No te preocupes, que ya queda menos.
Los objetos de las Clases "Event" tienen dos propiedades "target" y "currentTarget" que nos indican a quién se le ha aplicado el evento. Así que escribiríamos
Código ActionScript :
//FUERA del bucle definimos la función
function OverList(e:EventMouse) { //<--el argumento es "e" y es de la Clase EventMouse
var list:MovieClip=e.target as MovieClip //<--asignamos a una variable el "target" y le decimos que es de tipo MovieClip
//¡¡OJO!! no confundir con la variable "list" del bucle, es otra variable -aunque se llame igual-
//ahora sí que podemos hacer el Tween o, p.e. escribir
trace(lsit.name) //<--nos indicaría el nombre
var AlphaButton:Tween = new Tween(list,"alpha",None.easeOut, .2, 1,1, true);
}
puff