Está en la página 1de 4

Creacin de una pgina de la cartera basado en XML utilizando AS3

Como tengo listo para crear mi cartera digital que pens en mi documento de investigacin el uso de XML en relacin con Actionscript 3.
E4X o Ecmascript para XML se utiliza: el dole punto !..". El operador dole punto usca casos en los que la etiqueta# el siguiente ..
operador# aparece. Esto desaproar el antiguo uso de c$ild%ode &i'. C$ild%ode &('. etc )or e*emplo# cuando se carga el XML en el o*eto
XML: +ml,est# el tagimages ser-a uscado por E4X usando las siguientes:
+ml,est..images
Este .ragmento de cdigo# a la espera $a/ m0s de uno 1im0genes1 etiqueta devolver-a todas las im0genes del o*eto XML: +ml,est. )or lo
tanto# para acceder a una sola e+istencia# tendr-a que acceder a l de la misma manera un -ndice de un arra/ se accede utilizando &'.
+ml,est..images&('
Aqu- est0 el cdigo A23 $e desarrollado usando las siguientes re.erencias a:
Llenar una lista de o*etos con 1pro/ectos1
Llene los cuadros de te+to din0mico en el escenario
Carga din0micamente de im0genes e+ternas
A3adiendo movieclips animados dea*o de la imagen para tener acceso a im0genes espec-.icas.
La aplicacin de un v-nculo con el cuadro de te+to utilizando el te+to dentro.
Configuracin Inicial
En primer lugar tenemos que sumar nuestra disposicin general en el escenario. Esta din0mica se puede $acer pero /a que puede arrastrar#
soltar# / organizar# por qu no4 A$ora a3adir cuadros de te+to din0mico para la etapa# /a el nomre !vase el Action2cript de nomres" en la
.ic$a de propiedades. Al mismo tiempo# a3adir etiquetas !ca*as de te+to" para cada cuadro de te+to din0mico /a en el escenario.
En segundo lugar tenemos que arrastrar una lista de componentes en el escenario / el nomre de la instancia 1pro*ect5list1 / por 6ltimo pero
no menos sumamos nuestra MovieClip en lanco a la etapa# nomre de instancia: 1imageArea1. Aqu- es donde las im0genes ser0n cargadas.
7espus de que es todo / que deer-amos $aer $ec$o algo que se ve algo como esto:
Actionscript para Frame 1
El .ragmento a continuacin utiliza una matriz de estructura de datos# cargador de clase# XMLList la estructura XML de la clase /
89LLoader. 7esde ListEvents se utilizan $a/ que importarlos : no tuvimos que importar el componente de la lista porque estaa en la
ilioteca de ;las$. Estos ListEvents se utilizan para capturar los clics realizados en la lista de componentes. Lea cuidadosamente el cdigo.
2i algo emrolla a su cuenta# comproar las re.erencias o usque en la p0gina de Live7ocs A23 A)<.
import .l.events.ListEvent=
>>2i se usa Actionscript e+ternos# m0s declaraciones de importacin dee ser utilizada.
var imageLoader:Loader=
var pictureArra/:Arra/=
var pictures:XMLList=
var +ml7ata:XML=
var +mlLoader:89LLoader ? ne@ 89LLoader!"=
+mlLoader.addEventListener!Event.CAM)LE,E# onComplete"=
+mlLoader.load!ne@ 89L9equest!1pro*ects.+ml1""=
pro*ect5list.addEventListener!ListEvent.<,EM5CL<CB# s$o@)ro*ectContents"=
>>cuando la carga completa en XML
.unction onComplete!e:Event":void
C
tr/
C
+ml7ata ? ne@ XML!e.target.data"=
parseXML!+ml7ata"=
D
catc$ !e:Error"
C
trace!1error: 1 E e.message"=
return=
D
D
>> analizar XML t-tulos a la lista de componentes en el escenario
.unction parseXML!+ml7ata:XML":void
C
>>trace!+ml7ata"=
var pro*ectList:XMLList ? +ml7ata.pro*ect.name=
.or eac$ !var pro*ect,itle:XML in pro*ectList"
C
pro*ect5list.add<tem!Clael:pro*ect,itle# data:pro*ect,itleD"=
D
D
>>parsear +ml a ca*as de te+to en el escenario.
.unction s$o@)ro*ectContents!e:ListEvent":void
C
name5t+t.te+t ? +ml7ata.pro*ect&e.ro@<nde+'.name.te+t!"=
client5t+t.te+t ? +ml7ata.pro*ect&e.ro@<nde+'.client.te+t!"=
url5t+t.te+t ? +ml7ata.pro*ect&e.ro@<nde+'.url.te+t!"=
description5t+t.te+t ? +ml7ata.pro*ect&e.ro@<nde+'.description.te+t!"=
>>a partir de las im0genes tienen m0s de una imagen# vamos a ver cmo .unciona esto
>>trace!F<mages: F E +ml7ata..picture&e.ro@<nde+'.Gsrc"=
>>$acer una nueva secuencia de comandos de uso +mlList E4XH
pictures ? +ml7ata..images&e.ro@<nde+'.picture=
load<mage!pictures&('.Gsrc"=
>>eliminar la imagen de otro pro/ecto de lista
i. !pictureArra/"
C
destro/All!pictureArra/"=
D
>>iniciar la nueva serie# rellenar# / a3adir a la etapa
pictureArra/ ? ne@ Arra/!"=
.or!var i ? (= i I pictures.lengt$!"= iEE"
C
trace!pictures&i'.Gsrc"=
var picture%umer:)icture%umer ? ne@ )icture%umer!"=
addC$ild!picture%umer"=
picture%umer.+ ? JKL E !!picture%umer.@idt$ M i" E L"=
picture%umer./ ? 3N(=
pictureArra/.pus$!picture%umer"=
picture%umer.picture%umer5t+t.te+t ? i E J=
picture%umer.picture%umer5t+t.addEventListener!MouseEvent.CL<CB# c$ange)icture"=
D
>>$acer que el cuadro de te+to url $acer clic / navegar a url
url5t+t.addEventListener!MouseEvent.CL<CB# goto89L"=
pictureArra/&('.gotoAnd)la/!O"=
D
>>eliminar la imagen de la .ase matriz / orrar de la memoria
.unction destro/All!arra/:Arra/":void
C
.or!var i:int ? (= i I arra/.lengt$= iEE"
C
i. !arra/&i'.parent H? null"
C
arra/&i'.parent.removeC$ild!arra/&i'"=
delete arra/&i'=
D
D
D
>>Cargar imagen di.erente e iniciar la animacin
.unction c$ange)icture!e:MouseEvent":void
C
load<mage!pictures&%umer!e.target.te+t" : J'.Gsrc"=
reset<mage%umers!"=
trace!Fcurrent .rameFEe.target.parent.current;rame"=
trace!Ftotal .ramesFEe.target.parent.total;rames"=
i. !e.target.parent.current;rame H? e.target.parent.total;rames"
C
e.target.parent.gotoAnd)la/!O"=
D
D
>>restalecer todos los n6mero de la imagen animaciones
.unction reset<mage%umers!":void
C
.or!var i ? (= i I pictureArra/.lengt$= iEE"
C
pictureArra/&i'.gotoAnd2top!J"=
D
D
>>$aga clic en un cuadro de te+to# va/a a la 89L especi.icadas por el te+to.
.unction goto89L!e:MouseEvent":void
C
trace!FPoing to: F E e.target.te+t"=
navigate,o89L!ne@ 89L9equest!e.target.te+t""=
D
>>cargue una nueva imagen en el 0rea image
.unction load<mage!url:2tring":void
C
>>estalecer las propiedades de mi cargador de o*eto
imageLoader ? ne@ Loader!"=
imageLoader.load!ne@ 89L9equest!url""=
imageLoader.contentLoader<n.o.addEventListener!)rogressEvent.)9AP9E22# imageLoading"=
imageLoader.contentLoader<n.o.addEventListener!Event.CAM)LE,E# imageLoaded"=
D
>>una vez que la imagen se realiza la carga
.unction imageLoaded!e:Event":void
C
>>Cargar la imagen
i. !imageArea.numC$ildren ?? J"
C
imageArea.removeC$ildAt!("=
>>trace!Fremoving ot$er pictureF"=
D
imageArea.addC$ildAt!imageLoader#("=
D
>>mostrando el porcenta*e de carga de la imagen mientras se carga
.unction imageLoading!e:)rogressEvent":void
C
>>La carga de imagenes
var percent:%umer ? e./tesLoaded > e./tes,otal=
trace!percent E QR o. F E e./tes,otal E F /tes.F"=
D
!emplo de arc"i#o XML
Aqu- est0 el arc$ivo de datos que es utilizado por esta aplicacin .las$. Este es un esquema mu/ simple que puede ser .0cilmente outputted
por un simple script )S) en caso de que usted desea guardar sus pro/ectos en una ase de datos.
I4+ml version?1J.(1 encoding?1ut.:T14U
Ipro*ectsU
Ipro*ectU
InameU;irstI>nameU
IclientUM/ ;irst ClientI>clientU
IurlU$ttp:>>@@@..irst.comI>urlU
IimagesU
Ipicture src?1>$ead.*pg1 >U
Ipicture src?1>compass.*pg1 >U
Ipicture src?1>.aa.*pg1 >U
Ipicture src?1>;actVooWCoverN.*pg1 >U
Ipicture src?1>mmci.*pg1 >U
Ipicture src?1>mmls.*pg1 >U
I>imagesU
IdescriptionU7escription o. m/ .irst pro*ect.I>descriptionU
I>pro*ectU
Ipro*ectU
InameU2econdI>nameU
IclientUM/ 2econd ClientI>clientU
IurlU$ttp:>>@@@.2econd.comI>urlU
IimagesU
Ipicture src?1>.aa.*pg1 >U
Ipicture src?1>;actVooWCoverN.*pg1 >U
I>imagesU
IdescriptionU7escription o. m/ 2econd pro*ect.I>descriptionU
I>pro*ectU
I>pro*ectsU

También podría gustarte