Mostrando entradas con la etiqueta Flash. Mostrar todas las entradas
Mostrando entradas con la etiqueta Flash. Mostrar todas las entradas

miércoles, 17 de noviembre de 2010

Reto FlashLite Nokia Colombia

El "Reto FlashLite" de Nokia que está organizando el Adobe User Group Colombia, de la mano de Ivan Sosa,  este concurso se basa en el desarrollo de aplicaciones para dispositivos móviles con la tecnología Nokia y el sistema operativo Symbian, además deben ser desarrollados con la plataforma Flash Lite que conforma el entorno de desarrollo móvil de Adobe y la plataforma Flash.
Debo aclarar que el tiempo del concurso es algo corto así que es necesario empezar a trabajar desde ya, para quienes tienen miedo de participar por desconocimiento en el lenguaje AS2 o AS3, les recomiendo que no se asusten ya que el lenguaje es bastante parecido a JAVA o C# y en Internet se encuentra muchísimo material para aprender mientras se va desarrollando la aplicación, además este link tiene la lista de tutoriales que he desarrollado sobre AS3 para que se familiaricen con el tema.
Ante cualquier inquietud que tengan no duden en escribir sus comentarios

Para más información sobre el concurso, recuerden revisar el link dispuesto por el AUG: http://www.flashcampbogota.com/retoflashlite/home.html

Leer más...

lunes, 7 de junio de 2010

Adobe Enterprise Café - Resumen

Hoy me encontraba navegado por la WEB, y encontré una excelente aplicación hecha por Adobe, que permite estar al tanto de las novedades de sus productos empresariales y de comunidad, además de otras decenas de características. Adobe Enterprise Café es una herramienta basada en Adobe AIR, que permite conectarse a los servicios más utilizados por los desarrolladores de Adobe, todo desde el mismo lugar.

..
Adobe Enterprise Café, requiere que tengas cuenta de Adobe si todavía no la tienes una buena idea es obtenerla ya que gracias a esa cuenta, se pueden obtener varios beneficios en el sitio y es una cuenta que sirve para todos los productos web de Adobe.

Antes de poder iniciar se selecciona la herramienta favorita podemos seleccionar entre Adobe LiveCycle, Acrobat, Connect, ColdFusion y Flash Plataform (supongo que ya saben cual escogí), al ingresar a la información de la herramienta, encontramos una serie de botones que sirven para conocer las novedades, estar al pendiente de foros, RSS, eventos, notas, etc.

Cabe destacar el hecho de que desde esta plataforma podemos visitar Tv.Adobe, Tour de Flex, Tour de LiveCycle, Air Marketplace y muchas de las herramientas más utilizadas, todo desde el mismo entorno, esto es una gran ventaja y representa ahorro de tiempo para la consulta de información.

Realmente recomiendo mucho al herramienta para estar al tanto de las novedades de los proyectos Adobe.
..

Leer más...

miércoles, 21 de abril de 2010

Lanzamiento de ADOBE CS5 - El evento

El sábado 17 de Abril, estuve en el evento de lanzamiento de la Suite Adobe CS5 y Flash Builder 4 (FB4), evento organizado por el Adobe User Group Xpert.

Marlon Ceballos hizo una excelente presentación sobre lo nuevo de programas como InDesign, Illustrator, Photoshop y Flash Catalyst, después Andres Rodrigues, nos hizo una demostración de cómo implementar la interfaz diseñada con Flash Catalyst en un proyecto de FB4, en seguida estuve hablando sobre el consumo de WebServices desde FB4 sin necesidad de conocer nada de ActionScript 3 y para finalizar de nuevo Marlon, nos presento algunas de las novedades de Flash Professional, sin duda alguna, una de las herramientas que más cambios ha tenido desde que Adobe la adoptó.

..
Toda la historia detrás del evento es bien larga y tuvo muchos detalles, que es bueno comentar, todo empezó cuando Marlon me pidió el favor de apartar el Auditorio del SENA para hacer el evento de lanzamiento, la fecha y hora del evento cambió muchas veces, unas veces por afán otras veces por falta de comunicación, otras veces por miedo al fracaso y a fin de cuentas el evento quedo programado para las 10:00Am del Sábado 17, las invitaciones fueron enviadas a través de correo electrónico, de Twitter, de Facebook y lo único que nos hizo falta fue hacer comercial en TV y enviar señales de humo. La convocatoria sirvió mucho ya que de manera sorprendente los cupos se agotaron en menos de 48 horas, y todo indicaba que sería un excelente evento.

El viernes el afán por tenerlo todo bien se notaba y personalmente estaba sufriendo ya que no tenía ni presentación ni ejemplo, por falta de tiempo no lo había podido preparar, al hablar con Marlon me dijo que todo estaba preparado y que al parecer yo era el único vago que no tenía nada listo, toda la tarde del Viernes y gran parte de la noche, estuve trabajando en el ejemplo y creo que todo salió muy bien, me fui a acostar temprano y misteriosamente Marlon seguía despierto y yo me fui a descansar.

Al siguiente día, muy a las 9AM llegué y ya había gente haciendo fila y esperando por entrar, entre ellos se encontraba Andres Rodriguez. La entrada la dimos a las 9:30 y Marlon, aun no llegaba, después de mucho esperar al fin recibí la llamada de Marlon pidiendo el favor de ir a recoger la tremenda caja que traía llena de regalos para los asistentes al evento, dentro de la caja misteriosa se encontraban varias camisetas, libros y más libros.


El evento inicio poco antes de las 10AM con la presentación de Marlon sobre InDesign, luego Illustrator (Me encanto la parte del manejo de perspectiva), Photoshop y su magia negra y Flash Catalyst, mostrándonos uno de los ejemplos que se encuentran en su sitio WEB de tutoriales, de inmediato Andres, continuó con su demostración de Flash Builder 4 integrandolo con el proyecto de Catalyst, haciendo la demostración de que tan fácil es crear aplicaciones con el FB4 y más si todo el diseño y la experiencia del usuario la hace un diseñador.

Luego llego mi turno, donde presente una de las novedades de Flash Builder 4, el panel de DATA/Service una poderosa herramienta para hacer conexiones a orígenes de datos como XML, WebServices, HTTPServices, BlazeDS, etc, sin necesidad de crear una sola línea de código, por mi gran boca me comprometí a crear un tutorial de eso en el blog, y muy pronto lo haré (lo sé, ya ha pasado tiempo y no he salido con nada, pero pronto lo haré). Ante la mirada incrédula de la mayoría de los espectadores cree una aplicación que consumía un WebService de ASPX sin necesidad de hacer mucho código y casi todo con el poderoso comando arrastrar y soltar.


Finalmente Marlon Ceballos hizo su presentación sobre Adobe Flash Professional CS5 y nos demostró las novedades en cuanto al nuevo Framework de manejo de texto el TLF, además del nuevo entorno de desarrollo de flash (al fin se puede decir que es un entorno de desarrollo) y la excelente posibilidad de crear proyectos integrados de Flash Professional y Flash Builder.


Al final del evento se hizo la repartición de los regalos y cada quien para su casa...no lo creo, realmente cayo un aguacero que nos dejo a muchos encerrados en el SENA hasta que descampara, pero esa es otra historia.

Si asististe al evento deja tus comentarios y si no fuiste, cuéntanos por que? y que crees que hizo falta.

Agradezco mucho a Marlon por la realización de un excelente evento y además por no demandarme por plagiar las fotos de su sitio: http://xpert.com.co/blog/eventos-adobe-cs5-comunidad-adobexpert-balance/ - Ese día no lleve cámara.

Leer más...

domingo, 21 de marzo de 2010

Listeners en AS3

Una de las cosas más complicadas de entender cuando se hace la migración de lenguaje AS2 al AS3, es el manejo de los listeners, que tienen un nombre bien raro y en español son difíciles de interpretar, ya que la palabra escuchador es muy poco común, por eso escribo este tip, para aprender a utilizarlos e intentar solucionar ciertas inquietudes.


--

En mis clases siempre digo que antes de definir un concepto técnicamente se debe hacer coloquialmente, es decir, antes de definir un término muy complicado y llenarlo de palabras difíciles de entender, se debe definir de la manera más sencilla y orientada al idioma. En este caso hablaremos de los Listeners, sabemos que la palabra al español se traduce como “escuchador” u “oyente”, palabras muy poco utilizadas ya que no creo haber conocido a alguien que le paguen por eso, no es común escuchar la frase: “…si, y ese de allá es Pedro, el escuchador…”. Ahora, teniendo claro que un escuchador es aquel que está siempre atento a escuchar a los demás tenemos que definir los demás conceptos que están asociados a los listeners en AS3.

Recordemos que AS3 es un lenguaje de programación orientado a Objetos y a Eventos, un objeto es todo lo que podemos hacer en el lenguaje y puede tomar cualquier forma, ahora definamos evento. Un evento es un suceso que le puede pasar al objeto, de esta manera un objeto de la clase persona tiene eventos como, tener sed, tener hambre, tener ganas de ir al baño, tener sueño, todos esos son eventos, sucesos que le pasan al objeto, para poder controlar estos eventos se recurre al uso de métodos, que son las acciones propias del objeto, así pues, cada evento tiene asociado un método de esta manera:

tener sed beberLiquido()
tener hambre comer()
tener ganas de ir al baño irBaño()
tener sueño dormir()

Entendiendo esto, vamos a pasar a la práctica, todos los objetos dentro de AS3 bien sean de Flash o del SDK de Flex, tienen unos eventos que se pueden manejar. Por ejemplo en Flex, el objeto Application (que esta usualmente en la primera etiqueta del código mxml, tiene un evento applicationComplete, que indica que la aplicación está completa es decir que ha cargado todos sus controles, sabiendo esto, podemos hacer un método que se dispare cuando la aplicación se carga y que empiece a cargar datos de una fuente de datos.

Para no hacer tan complicado el ejemplo, voy a hacerlo con un botón, y vamos a añadir un escuchador de evento para varios de sus eventos, esto lo haré con Flash, pero en Flex también se puede hacer, lo primero que vamos a hacer, es crear una figura en flash, lo convertimos en un botón o en un movieClip, personalmente prefiero los movieclips, ponemos un nombre de instancia y vamos al código.

Mi botón en este caso se llama boton_btn. Ahora vamos a programar los métodos para cada uno de los eventos, de esta manera.

boton_btn.addEventListener(MouseEvent.CLICK, clic);
function clic(
e:MouseEvent):void{
trace(
"el boton fue presionado");
}


Así se programa el evento Click para el botón, de la misma manera podemos programar un evento del mouse o del teclado, del escenario y en general de cualquier objeto para que se ejecute acción, en el archivo adjunto se encuentra la programación para más eventos del Mouse para este botón.

Cómo conclusión podemos decir que un listener es un objeto que está siempre atento a escuchar a otro objeto y cuando escucha algo, dispara un método que ejecuta cierto proceso lógico, me viene a la mente Superman, el super heroe es un listener, Luisa es otro objeto, que dispara el evento caer, superman escucha que ella está cayendo y ejecuta el método correr, o volar y después el método recibir para salvar la vida de Luisa.


Leer más...

miércoles, 3 de marzo de 2010

Tour de Flex (Recomendación)

Unas de las preguntas que más me hacen cuando hablo de Flex son: ¿Cómo empiezo?, ¿tiene tutoriales?, ¿donde consigo información?, la respuesta es difícil, no se encuentra mucha información, excepto en paginas de enamorados de flash y de la tecnología flex, que no son muchos por cierto. Si, la comunidad Flex está creciendo y es muy alentador encontrar buenos resultados en las búsquedas de google, pero todavía hace falta mucho, queremos unirnos a ese pequeño grupo de paginas que enseñan Flash y Flex, así que voy a publicar periódicamente información sobre sitios recomendados y aplicaciones que nos ayudan a aprender sobre la tecnología.

En este caso, voy a hablar del Tour de Flex, es una aplicación de Adobe AIR que se conecta a la Internet para acceder a muchísima información relacionada con el manejo de la plataforma, no es una aplicación nueva y de hecho es una de las aplicaciones más utilizadas por las comunidades de desarrollo Flex, por que cuenta con una gran cantidad de aplicaciones y ayudas.

NO son tutoriales

Quizás la gran ventaja del Tour de Flex, es que no son tutoriales ni es la ayuda (que sirve mucho, pero también confunde) sino que es un compendio de aplicaciones desarrolladas que muestran ejemplos aplicados de cada una de las herramientas. Con una gran exactitud y claridad muestra cómo manejar los controles, los efectos, los validadores, como hacer el acceso a datos, manejar APIs y en general es un gran paseo por la plataforma, constantemente se está actualizando y definitivamente es una de las herramientas recomendadas para quienes inician y para quienes ya llevan un buen rato con la herramienta.


Para instalar la plataforma, solo debes hacer click en el cuadro anterior, si no tienes el Adobe AIR, deberías consultar primero esto.

Leer más...

martes, 2 de marzo de 2010

Aplicar CSS a Flash

En ocasiones cuando tenemos mucho texto en flash, recurrimos a cambiar a mano las configuraciones de cada palabra para darle más importancia, para indicar que es un link, para hacer enfasís en una frase o manejos de fuentes dependiendo de la importancia del texto.
Con AS3 es posible configurar el texto como si fuera texto HTML, dando esto la habilidad de cambiar su apariencia por medio de un archivo CSS.

Configuración clásica de un campo de texto


Para el ejemplo, utilizare un estilo básico, sólo voy a configurar los parrafos, sin embargo, es posible configurar muchísimos estilos y objetos diferentes.
Estilo CSS para el ejemploAhora, creamos un nuevo proyecto de ActionScript 3.0 en Flash. En la línea de tiempo añadimos una nueva capa llamada AS, y la bloqueamos, esta es una buena práctica a la hora de trabajar con AS dentro de Flash, ya que separa el código de los elementos gráficos y permite llevar un orden mucho más estructurado en la codificación.
Ahora creamos una nueva capa, llamada campo, en el primer fotograma de esta capa, vamos a poner un campo de texto dinámico y en su nombre de instancia, vamos a poner el valor campo_txt.
Nota: el sufijo _txt no es necesario, pero es una buena práctica a la hora de programar.
Creación de campo de texto dinámico

En el primer fotograma de la capa AS vamos a escribir el siguiente código:

código AS3 para asignar el estilo al campo de texto

Listo, a la hora de ejecutar la película el texto se cargara con el estilo especificado, esto mismo sirve para vínculos, colores, fondos, etcétera.

Estos son los archivos fuente:






No se olviden de comentar.

Leer más...

lunes, 1 de marzo de 2010

Mis primeros pasos con AS3

Como todo lenguaje de programación, AS 3.0 puede llegar a ser aburrido, dispendioso, desesperante, estresante, complicado, y en fin una serie de cientos de defectos, sin embargo es bueno aprender y sacar el mayor provecho de esto (no del aburrimiento que esto produce sino de la funcionalidad del lenguaje), voy a explicar de una forma rápida y sencilla el uso de AS3 para hacer cositas muy sencillas, como ciclos repetitivos y cosas así.

Logo ActionScript 3.0
Es fundamental saber que AS1, AS2 u AS3, son lenguajes muy parecidos y el hecho de hacer aplicaciones en flash MX o en flash 8 no quiere decir que estemos programando con AS3, esta publicación muestra unas cuantas diferencias en el uso de estos lenguajes que pueden generar confusiones en la gente (incluso yo estaba confundido pero ya estoy encontrando mi rumbo).

Diferencia en la declaración de variables:

En AS1 la declaración de variables puede llegar a parecerse a un lenguaje de programación que no quiero nombrar pero espero que se den cuenta por ustedes mismos, la variable se declara de este modo:


Lenguaje = "PHP";

NOTA: cualquier mensaje que pueda parecer subliminal no lo es…

Como se pueden dar cuenta la variable se declara de forma muy sencilla y un poco desordenada, ahora bien, de nada nos sirve declarar las variables si no las podemos ver, para aquellos que saben programar, saben que para java, la salida del sistema se logra con "System.out.println(variable o "texto");", AS también cuenta con una salida parecida, que se logra de este modo:

trace(Lenguaje);

Esto muestra una pantalla emergente que
solo aparece en tiempo de diseño o desarrollo, es decir el usuario final no la vera. La ventana se muestra con el valor de la variable, en este caso mostraría esto: PHP
Ahora bien, así seria con AS2:

var Lenguaje : String = "buuuu";
trace(Lenguaje );

La salida en esta ocasión seria esta: buuuu.

En AS3 es igual, la diferencia de AS2 y AS3 es que este último es más estricto y mucho más ordenado, muy parecido a JAVA de hecho.

Numeros:
AS2 utiliza el tipo de dato Number para el manejo de números enteros y decimales, al igual que en el ejemplo anterior, se pueden declarar variables sin indicar tipo de dato, pero lo ideal es hacerlo de esta manera.

var num:Number = 50;
num = 50;

Un ejemplo:

// tengo 5 manzanas
var manzanas: Number = 5;
//me como 3
var comidas: Number = 3;
// ¿Cuántas manzanas me quedan?
var total: Number;
trace("me quedan "+(total=manzanas-comidas)+" manzanas, porque este gloton\nhijuemadre se comió "+comidas+" de mis "+manzanas+" manzanas");

En el ejemplo, se hace una resta en la impresión, esto es posible y muy útil en unos casos, también podemos ver como es la concatenación en las impresiones, es decir
"mensaje "+variable+" mensaje".

En AS3 esto funciona igual, con la diferencia que el lenguaje AS3 maneja más tipos de datos numéricos, son estos:
  • int: tipo de dato entero, contempla números negativos y positivos.
  • uint: tipo de dato entero que solo contempla números positivos.
  • Number: tipo de dato numérico que contempla números negativos, positivos, decimales y números de gran tamaño.

Ciclos repetitivos:

¿Por qué si todos los lenguajes tienen bucles AS no?, pues si, AS si tiene y son muy parecidos al resto.

// Ciclo For o para más if anidado
for(var i:int = 0; i<> if(i==1){
trace(i+" gol!!!!");
}
else{
trace(i+ " goles!!!!");
}
}

El ciclo while es básicamente lo mismo, así que no me tomare el tiempo de explicarlo.

Funciones:

No voy a hablar de funciones matemáticas, eso ya se me olvido, les voy a hablar de funciones en AS, ¿que es una función?, es una instrucción o una serie de ellas que se ejecutan dependiendo de un evento, por ejemplo al presionar un botón, al cumplirse determinado tiempo, al llegar a un fotograma o cosas así. Las funciones cambian entre los 2 idiomas, así que aquí están los ejemplos:

en AS2

//se construye la funcion llamada mensaje
function mensaje(){
//que imprimirá un mensaje
trace("Mensaje de prueba");
}

Para llamar a la función solo basta con llamarla por su nombre:

mensaje();

En AS3 las funciones se pueden hacer del mismo modo, lo que difiere es la manera como se llama desde los eventos, ya que en AS3 es muy importante hacer uso de los objetos Listener (escuchadores) que se encargan de administrar los eventos de las aplicaciones.

Manejar eventos en AS

En AS2 para programar el evento de un botón se hacía de esta manera:

//se llama al botón por su nombre de instancia, se adjunta el evento que se va a programar
//en este caso onPress, y se iguala a una nueva función
nombreBoton_btn.onPress = function(){
trace("Mensaje de prueba");
}

En AS3 se requieren más lineas de código pero es mucho más ordenado y se pueden manejar muchos más elementos dentro de una función.

//se añade un Escuchador de evento (EventListener) al botón, luego se programa el tipo de evento
//en este caso el evento CLICK del Mouse y se añade el nombre de la función que se llamará
nombreBoton_btn.addEventListener(MouseEvent.CLICK, mensaje);

//se declara la función, pero esta vez se le especifica un parámetro de tipo MouseEvent y se
//especifica el valor que retorna la función, en este caso void quiere decir vacío, la función no
//retorna nada.
function mensaje(event:MouseEvent):void{
trace("Mensaje de prueba");
}

En general los cambios no son tan bruscos, como la mayoría de la gente cree, pero es importante adaptarse al uso del lenguaje AS3, que no es un lenguaje nuevo, y hay mucha información en la WEB.

Recuerden dejar sus comentarios.



Leer más...

sábado, 27 de febrero de 2010

Quieres ganar libros de Adobe

El Adobe User Group - Xpert, está regalando libros FÍSICOS de las mejores y más conocidas editoriales técnicas con temas Adobe O’reilly, friendsofed, informit y Peachpit. ¿Cómo ganar?, fácil, solo debes crear un tutorial o vídeo-tutorial, un articulo relacionado con algún producto Adobe o siguiendo al usuario@adobexpert en Twitter, la información completa del concurso se encuentra aquí.




Leer más...

domingo, 21 de febrero de 2010

TweenLite básico

TweenLite, es una potente librería que permite la creación de movimientos en Flash, basado en procedimientos aritméticos. En ocasiones y en especial cuando se es desarrollador hacer animaciones con línea de tiempo en Flash, es un proceso que lleva mucho tiempo y que puede que no entregue los resultados esperados.

En este post voy a hacer una pequeña introducción al trabajo con la librería de TweenLite que a mi concepto es una de las más fáciles de utilizar y una de las más completas además.



--
Antes de empezar, hay que descargar las clases, yo recomiendo crear una carpeta donde se almacenen todas las librerías que descarguemos, esto nos permite compartir librerías entre proyectos y lógicamente mantener el orden de nuestro material.


Al tener el paquete descargado y descomprimido encontraremos una carpeta llamada gs y un par de archivos SWF que permiten explorar todas las posibilidades de animaciones utilizando las clases de TweenLite, recomiendo ver como funcionan y explorar un buen tiempo las herramientas.

Para poder utilizar las librerías debemos crear un nuevo proyecto de ActionScript 3.0 y crear en él un nuevo Clip de película.

lo nombramos cara_mc (o lo que sea) y lo dejamos en el escenario, después de eso, debemos ponerle un nombre de instancia, preferiblemente el mismo nombre que le dimos al crearlo, este nombre de instancia es para poder llamar al objeto desde el código AS3, para poner el nombre de instancia se debe hacer desde el panel de propiedades en la parte superior del panel, cuando el clip de película está seleccionado.

Ahora guardamos el archivo en algún lugar y al mismo nivel de carpetas copiamos y pegamos la carpeta GS de TweenLite, esto para que el archivo de Flash pueda importar las clases y pueda utilizar los métodos de las mismas.


Teniendo listo todo, es hora de pasar al código, vamos a iniciar con un ejercicio sencillo, hacer que el clip de película se desplace de un lugar a otro, para ello vamos a crear una nueva capa llamada AS y en el primer fotograma (hasta el momento no tenemos más de un fotograma) vamos a buscar el panel de acciones de Flash y escribimos lo siguiente:






import gs.TweenLite;


//el import se encarga de llamar a las clases de la carpeta gs


// TweenLite.to( clip, duracion, parametros )


TweenLite.to(cara_mc, 1.5, {x:350,y:200})


//cara_mc es nuestro clip de película


//1.5 es el tiempo en milisegundos que tardara la animación


//los parametros x,y y sus valores, son el destino final del MC




Esto genera una animación sencilla sobre nuestro clip de película. Ahora vamos a hacer una animación más compleja donde el clip persigue el puntero del Mouse, el código debe variar de esta manera:


import gs.TweenLite;


import gs.easing.*;


stage.addEventListener(MouseEvent.MOUSE_MOVE,seguir);


function seguir(e:MouseEvent):void{


TweenLite.to(cara_mc, 2.5,x:this.mouseX,y:this.mouseY, ease:Elastic.easeOut})


}





En este código manejamos un "escuchador de evento" Listener que será objeto de estudio en un próximo post, la función seguir recibe como parámetro un objeto de la clase MouseEvent ya que es la clase encargada de manejar el evento de movimiento del Mouse, por otra parte, la última parte del códigoease:Elastic.easeOut se encarga de generar el movimiento elástico que se ve en la animación.

Espero que les guste y si tienen inquietudes recuerden dejar sus comentarios o escribirme a sebastian44van[at]gmail.com o en Twitter: @juanchoVanegas.


Leer más...