JSFL – Redondear Posiciones de Objetos en Flash

Publicado por Iván Gajate el 21 de marzo de 2011 en Desarrollo Web, Flash | 1 comentario »

Es un comando que sirve para redondear a X e Y absolutas un objeto de nuestro escenario en Flash, ya sea un texto, forma, movieclip…

Ideal para evitar que los textos se blureen si no están en posiciones absolutas.

http://www.sidedev.net/blog/?p=117

Nota: La ruta correcta donde hay que copiar el archivo debe ser (en Mac) algo así:

Macintosh HD > Usuarios > {USUARIO} > Librería > Application Support > Adobe > Flash CS5 > {IDIOMA} > Configuración > Commands

Via Sidedev, gracias Joseba! ;)

Archivos de Ejemplo de las Conferencias ASNativos 2011

Publicado por Iván Gajate el 21 de marzo de 2011 en Eventos | No hay comentarios »

Las charlas fueron muy bien, parece que a todo el mundo le gustaron mucho :)

Los archivos con los ejemplos para descargar ya están online, se pueden ver en ASNAtivos.

Mis archivos llevan un regalito, son unas pruebas que he estado haciendo, a ver si a alguien le sirven para algo :D

Adobe Extension Manager se confunde de idioma.

Publicado por Iván Gajate el 28 de febrero de 2011 en Flash | 2 comentarios »

A veces el programa Extension Manager, se confunde con el idioma en que tenemos instalado Flash y nos instala las extensiones en una carpeta equivocada. Este bug hace que luego en Flash CS5 (o CS4) no veamos las extensiones, aunque en Extension Manager si que las tengamos como instaladas.

Para evitarlo tenemos que abrir Adobe Extension Manager desde el programa Flash, en Help > Manage Extensions…

Pero si queremos que no nos vuelva a suceder, podemos solucionarlo borrando unos archivos de nuestro sistema.

En mi mac tengo Flash CS5 instalado en:

Macintosh HD > Usuarios > {usuario} > Librería > Application Support > Adobe > Flash CS5

Ahí debería tener solo una carpeta llamada en_US, y sin embargo tras la instalación de una extensión, me aparece también otra llamada es_ES. En mi caso esa es la mala.

Lo primero que hago es borrarla, y para evitar que vuelva a salir, tengo que borrar unos archivos en:

Macintosh HD > Aplicaciones > Adobe Extension Manager CS5

Ahí le doy botón derecho a Adobe Extension Manager CS5.app y selecciono Mostrar contenido del paquete, me abrirá el paquete del programa y borro los siguientes archivos y carpetas:

Contents > MacOS >ZStringResources >es_ES.xml
Contents > MacOS > Resources > es.lproj

Ahora ya podemos instalar directamente una extensión desde Extension Manager y que luego nos apareza instalada en nuestro Flash.

Esto lo he sacado tras mucho buscar de http://forums.adobe.com/message/3411292

y de aquí, también para Windows.

Deshabilitar el Plugin de Flash Temporalmente

Publicado por Iván Gajate el 21 de febrero de 2011 en Desarrollo Web, Flash, Sin categoría | 4 comentarios »

Si queremos probar por ejemplo cómo se vería nuestra página sin el plugin de Flash instalado (iPad, iPhone, gente sin el plugin instalado o deshabilitado…), podemos deshabilitarlo temporalmente en (Firefox):

Herramientas > Complementos > Plugins

Se activa y se desactiva en el momento, y no hace falta reiniciar el navegador. Ideal para hacer pruebas del contenido alternativo de nuestra web.

En Chrome se puede hacer lo mismo, escribiendo en la barra de dirección:

about:plugins

AS3 – Validar NIF, CIF y NIE

Publicado por Iván Gajate el 17 de febrero de 2011 en AS3, Tutoriales | 2 comentarios »

Hoy me ha tocado validar un DNI y un CIF (de empresa) y no ha sido tan fácil como pensaba. Tras mucho buscar he encontrado esta clase en Xavirobot que funciona a las mil maravillas, gracias Javi ;)

Tiene 4 métodos:

  • isNie
  • isCif
  • isNif
  • testAll

Se puede validar cada tipo de documento por separado, o sin especificar de qué tipo es con el método testAll. Me ha parecido muy ingenioso el devolver un número positivo o negativo si es válido o no, así basta con consultar si es mayor que 0 para saber si es un documento correcto, sea del tipo que sea :D

Lo único que no me ha gustado es cómo hay que usar los métodos. Personalmente los validadores siempre los hago con métodos estáticos, así son muy fáciles de usar:

TestDni.isNif("12345678Z") // true
TestDni.testAll("12345678Z") // 3 (NIF)

Así que he modificado algo su clase haciendo los métodos estáticos. La dejo aquí como referencia, la original la puedes ver en Xavirobot:

Leer el resto de esta entrada

AS3 – Sustituir un XML con Replace

Publicado por Iván Gajate el 10 de febrero de 2011 en AS3, Flash | No hay comentarios »

Yo hasta ahora para modificar un nodo de un xml sencillamente lo hacía así:

miXml.item = <item>Texto modificado</item>

El problema me ha surgido cuando he querido meter el nuevo contenido dentro de un CDATA, pues me truncaba el “<” y “>” a formato html, y claro, no funcionaba.

La solución, sustituir el nodo completo con replace:

var miXml:XML = <nodos>
			<item><![CDATA[texto a modificar]]></item>
		</nodos>

var nuevoNodo:XML = new XML("<item><![CDATA[imágen1.jpg]]></item>");
miXml.replace("item", nuevoNodo);

trace(miXml);

//<nodos>
//  <item><![CDATA[imágen1.jpg]]></item>
//</nodos>

Esto viene muy bien cuando el contenido se cambia por el valor de una variable, en un bucle recorriendo todos los nodos.

AS3 – Compartir en Twitter

Publicado por Iván Gajate el 7 de febrero de 2011 en AS2, AS3, Flash | 2 comentarios »

Ya vimos como se compartía un enlace en Facebook, y ahora toca Twitter.

http://twitter.com/share?count=vertical&text=Un%20estupendo%20sitio%20para%20aprender%20AS3%20;)&url=http://yporqueno.es

Y nos aparecerá algo como esto:

compartir-en-twitter-as3

La ventaja frente al otro método usando status es que si no estás logado, te redirige al login y luego te escribe el mensaje. Mucho mas intuitivo para los usuarios.

text = El texto que queramos insertar en twitter.
url = [Opcional] La url del enlace que queremos compartir.

Ojo que hay que convertir el texto y la url a html con encodeURI()

Y si queremos poner una almohadilla (#) tendremos que cambiarla a mano (después de lo anterior) por %23 con un:
cadena = cadena.split(“#”).join(“%23″);

Por cierto, mi Twitter es http://twitter.com/#!/ivangajate :D

Forzar Mayúsculas con Restrict

Publicado por Iván Gajate el 5 de febrero de 2011 en AS2, AS3, Flash | No hay comentarios »

Ayer descubrí una cosa por casualidad que tiene su gracia.

Si restringimos los caracteres válidos de un campo de texto con restrict a las mayúsculas, automáticamente nos pasa a mayúsculas el texto según lo vamos escribiendo.

campoDeTexto.restrict = "A-Z";

Esto nos ahora el tener que escuchar el evento CHANGE con un listener y pasarlo a mayúsculas… Interesante descubrimiento.

Conferencias ASNativos 2011

Publicado por Iván Gajate el 1 de febrero de 2011 en AS3, Eventos, Flash | No hay comentarios »

Volvemos a la carga en ASNativos con las conferencias de otros años.

Esta vez me he animado y estaré allí el día 25 de Febrero en las aulas de CICE hablando un poco sobre integración de Flash y SEO, para que nuestras páginas tengan una versión navegable y accesible por buscadores y nuevos dispositivos como iPhone, iPad, etc…

Las otras charlas son igual o más interesantes, recomiendo ir.

Se puede asistir presencialmente (plazas limitadas) y online a través de una plataforma de Adobe

Mas info sobre las conferencias.

Nos vemos!!

AS3 – Compartir en Facebook

Publicado por Iván Gajate el 27 de enero de 2011 en AS3, Flash | 7 comentarios »

Para poner el típico botón en una web de “Compartir en Facebook”, basta con poner este enlace:

http://www.facebook.com/sharer.php?s=100&p[url]=http://www.yporqueno.es&p[images][0]=http://www.yporqueno.es/blog/wp-content/uploads/2011/01/compartir_facebook.gif&p[title]=yporqueno.es,%20programaci%C3%B3n%20Flash&p[summary]=Un%20estupendo%20sitio%20para%20aprender%20AS3%20;%29

Y nos pondrá algo como esto:

Tiene varios parámetros como:

[url]: La url que queremos enlazar. En el ejemplo “www.yporqueno.es”.
[images]: La imagen que aparecerá en nuestro comentario. En el ejemplo es el logo del blog.
[title]: El título de la entrada. En el ejemplo “yporqueno.es, programación Flash”
[summary]: El contenido del mensaje. En el ejemplo “Un estupendo sitio para aprender AS3 ;)

Ojo que la imagen la cachea Facebook, es decir que en el momento que hagamos una prueba con foto.jpg si queremos cambiar la imagen, tendremos que cambiarle el nombre para que se refresque.

Para escribirlo con acentos y caracteres extraños, esta es una forma muy cómoda ;)

var url:String = "http://www.yporqueno.es";
var image:String = "http://www.yporqueno.es/blog/wp-content/uploads/2011/01/compartir_facebook.gif";
var title:String = "Un título";
var summary:String = "Un comentario";
var cadena:String = "http://www.facebook.com/sharer.php?s=100&p[url]=" + url + "&p[images][0]=" + image + "&p[title]=" + title + "&p[summary]=" + summary;
cadena = cadena.split("#").join("%23");
cadena = encodeURI(cadena);
navigateToURL(new URLRequest(cadena), "_blank");

En AS3 quedaría así:

navigateToURL(new URLRequest("http://www.facebook.com/sharer.php?s=100&p[url]=http://www.yporqueno.es&p[images][0]=http://www.yporqueno.es/blog/wp-content/uploads/2011/01/compartir_facebook.gif&p[title]=yporqueno.es,%20programaci%C3%B3n%20Flash&p[summary]=Un%20estupendo%20sitio%20para%20aprender%20AS3%20;%29"), "_blank");

Funciona muy bien, gracias Proknil.