A continuación, explicaremos brevemente los diferentes tipos de eventos que pueden desencadenar diferentes acciones en este tipo de aplicaciones.
Eventos iniciados por el usuario
Son el tipo más común de eventos. Reflejan la interacción del usuario final con la aplicación. Por ejemplo, en la siguiente figura podemos observar como se ha definido que cuando el usuario hace click sobre el botón “SpeakItButton” se reproduce oralmente el contenido escrito en la caja de texto “TextBox1”.
Eventos de inicialización
En algunas ocasiones nuestras aplicaciones requieren realizar ciertas funciones en el momento en el que se inician. AppInventor considera este inicio de la aplicación como un evento. En el siguiente ejemplo, podemos observar como en el momento en el que se inicia la aplicación realizamos una determinada acción, en este caso, invocar a la función “MoveMole”.
Podemos necesitar en algunos casos que cierta actividad de nuestra aplicación se realice en un cierto momento. AppInventor dispone de un componente denominado “Clock”, mediante el cual podremos programar la ejecución de determinadas acciones en un determinado momento. Por ejemplo, en la siguiente figura podemos observar como se ha definido un temporizador para que en un determinado tiempo mueva una bola desplazándola 10 unidades sobre el eje de las X.
Las actividades en las que se ven envueltos objetos gráficos también pueden producir eventos. De esta manera podemos crear juegos o aplicaciones con animaciones interactivas, controlando en todo momento que debería ocurrir.
En el siguiente ejemplo, se ha definido un comportamiento que controla las colisiones entre el objeto “Ball1” y el objeto denominado “other”, de tal modo que cuando se produce una colisión entre ambos, el objeto “Ball1” cambia su color a rosa y se reproduce un sonido de explosión.
Cualquier entrada externa hacia el dispositivo es considerada también como un evento. Por ejemplo, el hecho de recibir un mensaje de texto o la posición GPS son interpretados como eventos externos.
En el siguiente ejemplo, podemos observar como se ha definido un conjunto de bloques que reaccionan al evento de recibir un mensaje de texto. Una vez recibido, se responde al emisor con el mensaje de “Stop texting me!”.
Para resumir, podemos decir que todas las aplicaciones que desarrollemos estarán formadas por un conjunto de eventos y sus respectivas respuestas. Nuestro trabajo será conceptualizar y definir las respuestas a los eventos que queramos manejar.