App Inventor · Ejercicio práctico

Selector de Estado de Ánimo

Una app sencilla con ListPicker, botón, imagen, sonido y condicionales

😊

El usuario elige

Selecciona cómo se siente usando un ListPicker.

💬

La app responde

Muestra un mensaje diferente según la opción elegida.

🔊

Se reproduce sonido

La app confirma la acción con un sonido sencillo.

1. ¿Qué vamos a crear?

Vamos a crear una aplicación llamada Selector de Estado de Ánimo.

La aplicación preguntará al usuario cómo se siente y mostrará un mensaje personalizado.

Funcionamiento general

  • El usuario abre el selector.
  • Elige un estado de ánimo.
  • Pulsa el botón Mostrar mensaje.
  • La app muestra una respuesta.
  • Se reproduce un sonido.
Esta app no introduce componentes nuevos. Sirve para practicar diseño, eventos y condicionales.

Mi estado de ánimo

😊

¿Cómo te sientes hoy?

Motivado ▾
MOSTRAR MENSAJE

Resultado:

Perfecto. Hoy puedes avanzar mucho.

2. Diseño de la aplicación

ComponenteNombre recomendadoFunción
LabelLabelTituloMuestra el título de la app
ImageImageEstadoImagen decorativa
LabelLabelPreguntaPregunta al usuario cómo se siente
ListPickerListPickerEstadoPermite elegir el estado de ánimo
ButtonButtonMostrarEjecuta la acción principal
LabelLabelResultadoMuestra el mensaje final
SoundSound1Reproduce un sonido al mostrar el resultado
Recuerda: el componente Sound es no visible. No aparece en la pantalla del móvil, pero sí en App Inventor.

Opciones del ListPicker

Configura la propiedad ElementsFromString del ListPicker con estas opciones:

Contento,Cansado,Nervioso,Motivado

Texto inicial recomendado

  • LabelTitulo: Mi estado de ánimo
  • LabelPregunta: ¿Cómo te sientes hoy?
  • ButtonMostrar: Mostrar mensaje
  • LabelResultado: vacío o "Resultado pendiente"

3. Bloques necesarios

El funcionamiento se programa dentro del evento when ButtonMostrar.Click.

when ButtonMostrar.Click

    if ListPickerEstado.Selection = "Contento"
        set LabelResultado.Text to "¡Genial! Aprovecha esa energía para seguir aprendiendo."
        call Sound1.Play

    else if ListPickerEstado.Selection = "Cansado"
        set LabelResultado.Text to "Descansa un poco y continúa paso a paso."
        call Sound1.Play

    else if ListPickerEstado.Selection = "Nervioso"
        set LabelResultado.Text to "Respira tranquilo. Lo importante es intentarlo."
        call Sound1.Play

    else if ListPickerEstado.Selection = "Motivado"
        set LabelResultado.Text to "Perfecto. Hoy puedes avanzar mucho."
        call Sound1.Play

    else
        set LabelResultado.Text to "Elige un estado de ánimo antes de continuar."
Usamos condicionales sencillos: if, else if y else. No hacen falta variables ni listas avanzadas.

4. Paso a paso en App Inventor

1️⃣

Diseña la pantalla

Añade los Labels, la imagen, el ListPicker, el botón y el Sound.

2️⃣

Configura el ListPicker

Introduce las opciones: Contento, Cansado, Nervioso y Motivado.

3️⃣

Crea el evento

En bloques, usa el evento when ButtonMostrar.Click.

4️⃣

Añade condicionales

Comprueba la selección del ListPicker con if y else if.

5️⃣

Cambia el Label

Modifica LabelResultado.Text con el mensaje correspondiente.

6️⃣

Prueba la app

Comprueba todas las opciones antes de entregar.

5. Prueba de la aplicación

Antes de entregar, debes comprobar que la aplicación funciona correctamente.

☐ El ListPicker muestra las cuatro opciones.
☐ El botón ejecuta la acción principal.
☐ Contento muestra el mensaje correcto.
☐ Cansado muestra el mensaje correcto.
☐ Nervioso muestra el mensaje correcto.
☐ Motivado muestra el mensaje correcto.
☐ El sonido se reproduce al mostrar resultado.
☐ No aparece ningún error al probarla.
No des por terminada la app hasta probar todas las opciones del ListPicker.

6. Documento Word para Classroom

Cuando termines la aplicación, debes rellenar un documento de Word y subirlo a Google Classroom.

El documento debe incluir

  • Nombre y apellidos.
  • Nombre de la aplicación.
  • Componentes utilizados.
  • Qué hace la aplicación.
  • Bloques principales escritos.
  • Pruebas realizadas.
  • Dificultades encontradas.
  • Captura de pantalla del diseño, si es posible.

Preguntas para responder

  • ¿Qué componente permite elegir el estado de ánimo?
  • ¿Qué componente muestra el resultado?
  • ¿Qué evento se utiliza para ejecutar los bloques?
  • ¿Qué ocurre si el usuario elige "Nervioso"?
  • ¿Qué prueba has realizado antes de entregar?
El documento Word es parte de la entrega. No basta con crear la app.

7. Reto opcional para alumnos rápidos

Reto 1: añadir nombre

Añade un componente TextBoxNombre para que el usuario escriba su nombre.

Hola Kike, perfecto. Hoy puedes avanzar mucho.

Reto 2: validar campo vacío

Antes de mostrar el mensaje, comprueba si el TextBox está vacío.

if TextBoxNombre.Text = ""
    set LabelResultado.Text to "Escribe tu nombre antes de continuar."
else
    mostrar el mensaje personalizado
El reto es opcional. La actividad principal está terminada cuando funcionan las cuatro opciones del ListPicker.