Comunidad de diseño web y desarrollo en internet online

asesoria en Lector de noticias XML en Flash con imagenes

Citar            
MensajeEscrito el 04 Jul 2009 12:03 am
como puedo agregar los tipicos botones en este lector que diga por ejemplo:

1 2 3 4 5 y al darle click a cualquiera de estos botones te lleve a la nota que corresponde, a este lector ya le agregue tween para transiciones y el set interval para que cambie cada cierto tiempo, pero al tratar de agregar estos botones no logro hacer que funcione, muchas gracias

Por ipalmeros

45 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Jul 2009 02:31 pm
Se te olvidó poner la URL del lector

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 08 Jul 2009 04:09 pm
hola solisarg, gracias por la ayuda, mira no tengo la url de lo que llevo,pero este tutorial lo saque de aqui mismo, [/url], pero le modificaue un poco, y vi algun tuto aqui del temporizar y lo adpataron y lo tome, y viendo la ayuda de adobe, pude ponerle animacion cada vez que pasa el tiempo la imagten hace un efecto, pero ahora lo que necesito hacer es que cada noticia tenga un boton abajo con numeros, como en este ejemplo [url=http://flashden.net/item/flash-banner-rotator-xmlhtmlcss/21367?ref=FlashSpeaks] al cambiar la noticia en cierto tiempo el boton se marca en el numero de noticia que va, pero no logro hacer eso, pero te paso el codigo que llevo hasta ahorita:

Código ActionScript :

import flash.filters.BlurFilter; 
import mx.transitions.Tween; 
import mx.transitions.easing.*; 

//Permite caracteres tradicionales como letras con tilde la ñ, etc.
System.useCodepage = true; 

//Se declara la variable indice de tipo número (utilizada para referencia la noticia a mostrar)
var indice:Number; 

//Se declara la variable noticias_xml de tipo XML (utilizada para almacenar el documento xml)
var noticias_xml:XML; 

//Inicializaciones
indice=0; //inicializando indice en 0 para mostrar la primera noticia

//creando el objeto noticias_xml de typo XML
noticias_xml = new XML();

//Permite que el objeto XML ignore los espacios en blanco entre marca y marca del documento XML
noticias_xml.ignoreWhite = true;

//El método load() permite cargar el documento xml "noticias.xml"
noticias_xml.load("noticias.xml");

//El evento onLoad de activa cuado se haya cargado el documento noticias.xml
noticias_xml.onLoad = function(){
         //Se llama a la funcion cragarDatos para mostar la primera noticia (esto por la variable indice en 0)
         cargarDatos(indice); 
   
   }

/*
Funcion cargarDatos (utilizada para cargar y cambiar las noticias en el documento)
Esta función recibe un parámetro "_indice" que corresponde al elemento noticia  a mostrar
*/
function cargarDatos(_indice:Number){
      //Se inicializan variables utilizadas para almenar los datos de una noticia
      var fecha:String;
      var titulo:String;
      var mensaje:String;
      var imagen:String;
     
    
 
var myTween:Tween = new Tween(pantalla_mc, "blur", Strong.easeOut, 5, 0, 2, true); 
myTween.onMotionChanged = function() { 
   pantalla_mc.filters = [new BlurFilter(pantalla_mc.blur, pantalla_mc.blur, 50)]; 
}; 
    
   
   var cantidad:Number = noticias_xml.firstChild.childNodes.length
   
  /* for(var i:Number=1; i<=cantidad; i++){
      trace(i)
      
       _root.attachMovie("botones","boton_xml"+i,i);
      _root["boton_xml"+i]._x = 46 * i;
      _root["boton_xml"+i]._y = 245;
      
      _root["boton_xml"+i].onRelease = function(){
         indice=(noticias_xml.firstChild.childNodes[i] != null)?indice+1 : 0;
      }
      
      
   }*/
      
      
      

      
      //rutas.carga_num.text=0
       

   
      //Recuperando datos del objeto xml
      //Se accede al primer elemento [noticia] y se recupera la fecha desde el atributo [fecha]
      fecha = noticias_xml.firstChild.childNodes[_indice].attributes.fecha;
      
      //Se accede al primer hijo de elemento [noticia] y se recupera al valor del primer elemento de [titulo]
      titulo = noticias_xml.firstChild.childNodes[_indice].firstChild.firstChild.nodeValue;
      
      //Se accede al segundo hijo de elemento [noticia] y se recupera el valor del primer elemento de [mensaje]
      mensaje = noticias_xml.firstChild.childNodes[_indice].firstChild.nextSibling.firstChild.nodeValue
      
      //Se accede al último hijo de elemento [noticia] y se recupera el valor del primer elemento de [imagen]
      imagen = noticias_xml.firstChild.childNodes[_indice].lastChild.firstChild.nodeValue
     
    
   //-----------------------------------------------------------------------------------------  
     var titulo_all:String = titulo

var grupo:Array = titulo_all.split(" ")
trace(grupo[0])






//----------------------------------------------------------------------------
      
      //Mostrando los datos recuperados en el cuado de texto mensaje_txt y cargando la imagen en pantalla_mc
      _root.mensaje_txt.htmlText = "";
      _root.mensaje_txt.htmlText += "<font color='#F5AE1E' size='15'><b>" + grupo[0] +" "+ "</b></font><font color='#FFFFFF' size='15'><b>"+ titulo+"</b></font><br><br>";
      _root.mensaje_txt.htmlText += "<p><font size='11'>" + mensaje + "</font>";
     // _root.mensaje_txt.htmlText += "<font color='#666666' size='10'>Publicado: " + fecha + "</font></p>";
      //Cargado la imagen JPG externa en el clip pantalla_mc con el valor recuperado del objeto xml
      _root.pantalla_mc.loadMovie(imagen);   
   }

//Función que permite avanzar a la [noticia] siguiente almacenada en el objeto xml
siguiente_btn.onPress = function(){   
        indice=(noticias_xml.firstChild.childNodes[indice+1] != null)?indice+1 : 0; //incrementado en uno el indice
       cargarDatos(indice); //recuprando y mostrando los datos y la imagen en la pantalla
      
      
     

 var myTween:Tween = new Tween(pantalla_mc, "blur", Strong.easeOut, 5, 0, 2, true); 
myTween.onMotionChanged = function() { 
   pantalla_mc.filters = [new BlurFilter(pantalla_mc.blur, pantalla_mc.blur, 50)]; 
};
      
}
   
//Función que hace avanzar a la [noticia] siguiente automáticamente cada cierto tiempo   
function siguiente(){
     siguiente_btn.onPress()
    


   }
var refresca = setInterval(siguiente, 9000)// cada 9 segundos.
   
//Función que permite retroceder a la noticia anterior almacenada en el objeto xml   
anterior_btn.onPress = function(){
   //comprobando si existe un elemento [noticia] anterior
   if(noticias_xml.firstChild.childNodes[indice-1] != null){//restringue  a avanzar solo si hay una [noticia] anterior
         indice--; //reducciendo en uno el indice
         cargarDatos(indice); //recuperando y mostrando los datos y la imagen en la pantalla
         }
       
       var myTween:Tween = new Tween(pantalla_mc, "blur", Strong.easeOut, 5, 0, 2, true); 
myTween.onMotionChanged = function() { 
   pantalla_mc.filters = [new BlurFilter(pantalla_mc.blur, pantalla_mc.blur, 50)];
}
   }   
   


todo esto lo hice en base al tutorial de lector de noticias con imagenes y a otro usuario de este portal, pero me gustaria cargar esos botones como el de ese link, lo intente arriba pero no logro pasarle los valores a los botones, gracias de nuevo

Por ipalmeros

45 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Jul 2009 09:21 pm
bueno tuve que empezar de nuevo para tratar de que funcione antes que nada los botones que quiero asignar, pero aun no me funciona, bueno, del tutorial de montoya de lector de noticias xml en flash con imagenes solo agregue este codigo:

Código ActionScript :

var cantidad:Number = noticias_xml.firstChild.childNodes.length
for(var i:Number=0; i<cantidad; i++){
            
      // agregar el movie clip boton al movieclip llamado menu
       menu.attachMovie("botones","boton_xml"+i,i);
      // asignarle el numero de boton que es, usando el valor del nodo +1
      menu["boton_xml"+i].numero.text = i+1;
      menu["boton_xml"+i]._x = 40 * i;
      menu["boton_xml"+i]._y = 0;
      menu["boton_xml"+i].fecha = noticias_xml.firstChild.childNodes[i].attributes.fecha;
      menu["boton_xml"+i].titulo = noticias_xml.firstChild.childNodes[i].firstChild.firstChild.nodeValue;
      menu["boton_xml"+i].mensaje = noticias_xml.firstChild.childNodes[i].firstChild.nextSibling.firstChild.nodeValue
      menu["boton_xml"+i].imagen = noticias_xml.firstChild.childNodes[i].lastChild.firstChild.nodeValue
      
      menu["boton_xml"+i].onRelease = function(){
      _root.mensaje_txt.htmlText = "";
      _root.mensaje_txt.htmlText += "<p align='center'><font color='#006633' size='12'><b>" + titulo + "</b></font></p>";
      _root.mensaje_txt.htmlText += "<p><font size='10'>" + mensaje + "</font>";
      _root.mensaje_txt.htmlText += "<font color='#666666' size='10'>Publicado: " + fecha + "</font></p>";
      //Cargado la imagen JPG externa en el clip pantalla_mc con el valor recuperado del objeto xml
      _root.pantalla_mc.loadMovie(imagen);   
      }
      
      
      }





ya me saca la cantidad de botones como de notas que haya en el archivo xml, y los numera (1,2,3 etc), pero el problema ahora es que no me pone los datos que son, por ejemplo

si yo selecciono la noticia 2, los tres botones escogen la noticia 2, no la que corresponde, espero me puedan ayudar en esto, muchas gracias

Por ipalmeros

45 de clabLevel



 

msie8
Citar            
MensajeEscrito el 13 Jul 2009 05:52 pm
bueno, ya jalo todo perfectamente, el codigo no es lo mas elegante, pero si cumple con su objetivo, ahora la modificacion de montoya hace lo siguiente



aparte de enseñarte las noticias en xml, (cmo lo hizo montoya), ahora agregue un boton extra por cada noticia, cada vez que una noticia esta seleccionada, el boton que le corresponde parpadea, y al pasar cierto tiempo pasa a la siguiente noticia y el boton te lo marca tambien, hace una transicion de una imagen a otro con el tweening, y como esta conectada a una base de datos, al darle click a la nota, te lo muestra en una pagina detalle el contenido de la nota, cmo lo mencione no es nada elegante el codigo, ya que hay varias cosas que aun no se, pero para mi objetivo, se pudo lograr, pero muchas gracias de todos modos

Por ipalmeros

45 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.