antes que nada quiero agradecer a esta comunidad, por tolo lo que me han ayudado con sus aportaciones y publicaciones a lo largo de mi carrera como desarrollador, no quiero dar nombres por que igual se me olvidan algunos en este momento ... pero de igual manera gracias a todos.
Y bueno ya entrando en materia y sin afan de abrumar a nadie con mi problema y de verdad si no fuera por que ya le inverti varias horas a esto y no he obtenido los resultados deseados, acudo a ustedes; mi problema como lo dice parte de mi asunto es que no logro obtener el valor de una variable desde un objeto XML... dicha variable esta dentro de una clase y el objeto XML esta dentro de un metodo de la clase... les pongo el código y les explico...
Código ActionScript :
class splitText{ var temp_arr:Array = new Array(); function splitText(objTxt:Object){ typeAnimation = objTxt.typeAnimation; if(objTxt.xmlFile) loadXML(objTxt.xmlFile); else temp_arr.push(objTxt.string); } function loadXML(xmlFile:String){ var ObjXML:XML = new XML(); ObjXML.ignoreWhite = true; ObjXML.onLoad = function(success:Boolean){ if(success){ var Container:Array = ObjXML.firstChild.childNodes; var numC:Number = Container.length; for(var k = 0; k < numC; k++){ temp_arr.push(Container[k].attributes.captionName); } trace(temp_arr); } } ObjXML.load(xmlFile); } }
y este es el XML
Código XML :
<?xml version="1.0" encoding="utf-8"?> <captionList> <cpItem captionName="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." /> </captionList>
como pueden ver la variable "temp_arr" es una variable de caracter global dentro del entorno de la clase, en teoria o almenos hasta donde yo crei que era posible (ya que en la practica creo que no lo es) deberia de reconocerse dentro de cualquier nivel en la clase pero no logro asignarle los valores del atributo del nodo XML dentro del metodo loadXML() por que no la reconoce, ya intente probando con _root[temp_arr], _parent[temp_arr] this._parent ... etc. y nada (pensando que fuera problema de niveles), el objeto XML trabaja sin problema y tiene la información, pero al llamar a la función trace() me sale el lindo mensaje de "undefined", cosa que no sucede en el segundo caso dentro de la función constructora "temp_arr.push(objTxt.string)", aquí si me muestra el valor.
Si me pueden ayudar a resolver este dilema que me trae ya loco... se los agradecere mucho... se que no es comun programar hoy en dia en as2 pero todavia habemos algunos que no lo dejamos.
Saludos