Holas... soy nuevo en el foro, este esmi primer mensaje. Agrego que lo que sé de flash y lo he aprendido metiendo mano y leyendo, nunca estudié y demás, por lo que si le pongo un nombre extraño a alguien sepan entender que uso otros términos, más "de calle" podría decirse.
Mi problema es este:
He seguido el tuto para hacer un mp3 player en flash con los componentes que vienen en el programa. Consulto por el tema del playlist, hice todo lo que se necesita y funciona perfectamente, pero me gustaría que mi reproductor reproduzca 1 solo archivo y lo que muestre el playlist sea un nombre de fantasía y no el nombre del archivo, aquí pego mi lista.xml
Código :
<?xml version="1.0" encoding="iso-8859-1"?>
<lista>
<cancion>marchetti.mp3</cancion>
</lista>
el tema es que cuando pongo otra línea que se llama "nombre" en el xml (no sé dónde definirla en el código del flash) me aparecen los dos en el playlist como si fueran dos archivos distintos, y al hacer click intenta cargar el nombre (que sería "Entrevista a Pablo Marchetti") y como no existe ese archivo (pq el archivo es marchetti.mp3) me tira error. Enfin, cómo le puedo hacer para que cargue sólo el nombre del mp3 y al hacer click sobre el nombre reproduzca el archivo??? En todo caso lo que más me serviría sería saber cómo hacer para que reproduzca un mp3 sólo (la idea es hacer un reproductor para cada entrevista, y son varias, pq lasentrevistas van a tener un botón para cada una * ). También me gustaría agregar al swf una pequeña referencia de qué trata la entrevista.
* La página donde irá esto también es en flash y es muy sencilla. Es un cuadrado que a la derecha tiene 4 botones (quiénes somos, contacto, enlaces e inicio). En el angulo inferior derecho va un logo. Sobre la línea horizontal inferior va un menú con efecto easing (me bajé el fla y lo edité, tampoco sé hacerlo), en esa línea se van desplazando los nomres de los entrevistados. La idea es que al hacer click se abra un popup con el reproductor, este empiece a reproducir la entrevista y tenga esa pequeña reseña. Bien... les agradezco, pero porfavor explíquenme qué hago, no me digan "pon esto" simplemente, pq sino no aprendo y lo único que hago es copiar de los que saben. Grax!!!!
pd. el reproductor es el mediaplayback y el list que vienen con el flash, el único código as que hay está en el primer frame y es este:
import mx.controls.List;
import mx.controls.MediaPlayback;
//Cargamos el XML
canciones = new XML();
canciones.ignoreWhite = true;
canciones.onLoad = function(success) {
if (success) {
//Shortcuts
cancion = canciones.firstChild;
num_total = canciones.firstChild.childNodes.length;
//Creamos y llenamos la lista
crearLista();
//Creamos el reproductor
crearPlayer();
} else {
trace("No se pudo cargar la lista de canciones");
}
};
canciones.load("lista.xml");
///////////////////////////////////////////////////////////////////
/////////////////////////// LISTENERS ///////////////////////////
///////////////////////////////////////////////////////////////////
lista.addEventListener("change", alCambiar);
///////////////////////////////////////////////////////////////////
/////////////////////////// FUNCIONES ///////////////////////////
///////////////////////////////////////////////////////////////////
function crearLista() {
//Posicionamos la lista de las canciones
lista.setSize(150, 170);
lista._x = 220;
lista._y = 0;
//Llenamos la lista con las canciones
misDatos = new Array();
lista.dataProvider = misDatos;
for (var i = 0; i<num_total; i++) {
misDatos.addItem({label:cancion.childNodes[i].firstChild,
data:cancion.childNodes[i].firstChild});
}
}
function crearPlayer() {
//Posicionamos el reproductor
player.setSize(200, 200);
player._x = 0;
player._y = 0;
//Propiedades del reproductor
player.controllerPolicy = "on";
player.mediaType = "MP3";
}
//Cuando cambiamos la canción seleccionada en la lista... cargamos la nueva canción, y ejecutamos
function alCambiar(evento) {
if (evento.type == "change") {
player.setMedia("musica/"+lista.selectedItem.data, "MP3");
player.play();
}
}
pd.- si también pueden explicarmelo podría entenderlo y no molestaría a naides.... je! gracias!