Entradas con la etiqueta ‘clase’

AS3 - xml.getElementsByClass

Publicado por Iván Gajate el 28 de Abril de 2010 en AS3, Flash, Tutoriales | No hay comentarios »

Y la compañera de getElementsByName y getElementById es esta.

Supongamos que tenemos un xml con varios nodos con la misma definición de clase:

<div>
	<p class="parrafo">
		Esto es un párrafo
	</p>
	<form>
		<input type="checkbox" id="chk0">Leer</input> <br />
		<input type="checkbox" id="chk1">Montar en bici</input> <br />
		<input type="checkbox" id="chk2">Dormir</input> <br />
	</form>
	<p class="parrafo">
		Esto es otro párrafo diferente, pero con la misma clase
	</p>
</div>

Y queremos recuperarlos en forma de XMLList:

function getElementsByClass(data:XML, className:String):XMLList{
	return data.descendants().(hasOwnProperty("@class") && attribute("class")==className);
}

// Se usaria asi:
getElementsByClass(miXml, "parrafo");

Y devolvería esto:

<p class="parrafo">Esto es un párrafo</p>
<p class="parrafo">Esto es otro párrafo diferente, pero con la misma clase</p>

Este tipo de funciones las voy a ir recopilando en una clase XmlUtils.

Crear Dinámicamente Instancias de Clase en AS3

Publicado por Iván Gajate el 7 de Junio de 2009 en AS3, Flash | 3 comentarios »

Normalmente creamos una instancia de una clase con un simple

var cuadrado:Cuadrado = new Cuadrado();

Y eso está muy bien cuando conocemos el tipo de objeto que queremos crear, en este caso un Cuadrado.

Pero cuando no lo conocemos porque es variable, por ejemplo porque depende de una elección del usuario, tenemos que hacerlo así:

import flash.utils.getDefinitionByName;

var nombreClase:String = "es.yporqueno.Cuadrado";
var miClase:Class = Class(getDefinitionByName(nombreClase));
var instancia:* = new miClase();

addChild(instancia);

 

Leer el resto de esta entrada