Home » AS3 »Avanzado »Class » Currently Reading:

Cargar XML en un componente List en Actionscript 3

octubre 23, 2008 AS3, Avanzado, Class 4 Comments
Cargar XML en un componente List en Actionscript 3

Este es un ejemplo de clase que extiende el componente List de Flash y le añade la posibilidad de cargar el contenido desde un archivo XML externo.

Este ejemplo de clase surguió a partir de optimizar un clase que me mostró penHolder en Cristalab. Aqui pueden ver su codigo y el post original.

Basicamente mi aporte fue hacer que la clase extendiese de List para no tener que crear una instancia del componente y pasarla como parametro a otra clase, ya que nuestra intención es crear un mismo componete List pero que contenga unos metodos ampliados, en este caso que contewnga un metodo para cargar los datos desde un archivo XML.

  1. package
  2. {
  3.    import fl.controls.List;
  4.    import fl.data.DataProvider;
  5.    import flash.net.URLRequest;
  6.    import flash.net.URLLoader;
  7.    import flash.events.Event;
  8.    //------------------------------------
  9.    public class FillList extends List
  10.    {
  11.       private var _xml:XML;
  12.       //------------------------------------
  13.       public function FillList():void   {   }
  14.       //------------------------------------
  15.       public function setData(url:String):void
  16.       {
  17.          var request:URLRequest = new URLRequest(url);
  18.          var loader:URLLoader = new URLLoader();
  19.          loader.load(request);
  20.          loader.addEventListener(Event.COMPLETE, xmlLoaded);
  21.       }
  22.       private function xmlLoaded(e:Event):void
  23.       {
  24.          _xml = new XML(e.target.data);
  25.          dataProvider = new DataProvider(_xml);
  26.       }
  27.       //------------------------------------
  28.    }
  29. }

Para crear la instacia colocariamos este codigo enb la clase Main:

  1. package 
  2. {
  3.    import flash.display.MovieClip;
  4.    import fl.controls.List;
  5.    import FillList;
  6.    //------------------------------------
  7.    public class Main extends MovieClip
  8.    {
  9.       private var bofhList:FillList;
  10.    //------------------------------------
  11.       public function Main()
  12.       {
  13.          bofhList = new FillList();
  14.          bofhList.setData("datos.xml");
  15.          bofhList.setSize(150,200);
  16.          bofhList.move(10,10);
  17.          addChild(bofhList);
  18.       }
  19.    //------------------------------------
  20.    }
  21. }

Compártelo:

Cargar XML en un componente List en Actionscript 3
Visto 13.273 veces

Currently there are "4 comments" on this Article:

  1. pH dice:

    ya lo sabes… _O_

  2. Muy buen ejemplo, pero si quisieramos cargar un titlelist y se encuentra en otro moveclip como seria la llamada para la carga de la data:
    ¿?

  3. admin dice:

    @H-A: La carga de los datos no varia por la posición del titleList… Con la función “xmlLoaded” guardas los datos en una variable “_xml ” únicamente has de acceder a esa variable a través de un setter para clocarlo donde te interese.

  4. Nico dice:

    Parese bueno, pero no logro cargar el xml… siempre me devuelve un error…
    1017: No se encontró la definicón de la clase base List.

    Que puede estar fallando?

    NIco

Comment on this Article:








Twitter: zguillez

AdvertisementAdvertisementAdvertisementAdvertisement

Recibe las novedades por email

Post destacado

Panel de zoom de imágenes en Flex

13 abr 2009

Este ejemplo es, igual que hice en el post anterior, un ejemplo que he adaptado a Flex desde un ejemplo que hice hace tiempo para Flash. Se trata de un panel donde se ve un zoom de una parte de una imagen. Este es el ejemplo montado en Flex: Y este es el código utilizado para la película principal: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"                 xmlns:ui="*"                 layout="absolute"                 creationComplete="ini()"                 width="505" …



Map

Ranking

Codigoactionscript.org: 4.65 sobre 5 (106 valoraciones)

twitter-widget.com