Vamos a empezar a profundizar más en los objetos que podemos crear cuando estamos diseñando nuestra app. Uno de los más comunes es el botón, así que voy a explicar todas sus propiedades para que cuando tengamos que añadir uno sepamos cómo modificarlo a nuestro gusto.

Antes de hacer nada tenemos que añadir un botón a nuestra pantalla. Una vez hecho esto, podemos ver en la columna de la derecha todas sus propiedades.

Propiedades botón

Propiedades botón

Propiedades:

  • BackgroundColor: En esta opción podemos elegir un color de fondo para nuestro botón. No tiene mucho sentido si queremos poner una imagen de fondo en lugar de un color.
  • Enabled: Esta propiedad sirve para indicar si queremos que el botón se muestre desactivado o activado por defecto. Si desmarcamos esta casilla no se podrá usar el botón al utilizar la app.
  • FontBold: Al marcar esta propiedad indicamos que el texto del botón se muestre en negrita.
  • FontItalic: Si queremos que el texto del botón se muestre en cursiva marcamos esta opción.
  • FontSize: En esta propiedad indicamos el tamaño que queremos que tenga el texto del botón. Por defecto es 14.
  • FontTypeface: Aquí podemos modificar el tipo de letra que queremos que tenga el botón. Hay 3 tipos: sans serif, serif y monospace
  • Image: En esta propiedad podemos indicar si queremos que muestre una imagen de fondo el botón. En ese caso tenemos que elegir una imagen, subirla y aplicarla a este botón.
  • Shape: Esta opción indica la forma del botón. Por defecto es rectangular pero podemos cambiarla para que sea ovalada o con los bordes redondeados.
  • ShowFeedback: Con esta propiedad podemos definir si queremos que el botón haga un efecto visual a la hora de hacer click en el. Esto viene bien para el usuario que lo usa ya que si no hay efecto visual puede que no sepa que ha pulsado el botón.
  • Text: Aquí escribiremos el texto que se mostrará en el botón. También podemos dejarlo vacío por ejemplo porque queremos mostrar una imagen de fondo.
  • TextAlignment: En caso de que queramos mostrar un texto en el botón, podemos definir en esta propiedad cómo queremos que esté alineado: izquierda, derecha o en el centro.
  • TextColor: Esta propiedad define el color del texto que muestra el botón. Si no hemos indicado ningún texto no tiene sentido definir color.
  • Visible: La propiedad “Visible” sirve para hacer que el botón se muestre o no. Puede que nos sea útil que al principio nuestro botón esté oculto, en tal caso el valor deberá ser “hidden”.
  • Width: Aquí podemos indicar el tamaño del botón a lo ancho. La medida es en pixels o podemos indicar que se ajuste al contenedor donde se muestra, de esta manera ocuparía el total de ancho de su contenedor.
  • Height: Al igual que con la propiedad “Width”, podemos hacer lo mismo con “Height”. Esta, indica el tamaño del botón a lo largo en pixels. También podemos indicar que se ajuste al tamaño de su contenedor.

Eventos:

Para ver los eventos que tienen los botones, es necesario abrir el editor de bloques y acceder al apartado “My blocks” y el nombre del botón al que queramos programar el evento.

Eventos botón

Eventos botón

Estos son los eventos disponibles:

  • Click: Este evento se ejecuta cuando se hace click en el botón.
  • GotFocus: Este caso se ejecutará cuando el cursor esté sobre el botón pero sin pulsarlo. Puede ser un caso dificil en algunos dispositivos móviles ya que no todos tienen esta posibilidad.
  • LongClick: Aquí indicamos lo que queremos programar en caso de que se haya pulsado y mantenido el botón durante unos segundos.
  • LostFocus: Al igual que con “GotFocus”, este evento no puede darse en todos los dispositivos móviles pero ocurre cuando el botón deja de tener el cursor sobre si mismo.

Toda esta información y más está en la documentación oficial de App Inventor.

 

70 Thoughts on “Profundizando en App Inventor: Botones

  1. hola, como puedo hacer para que un botón con imagen de fondo pueda ser ovalado o con las esquinas redondeadas?

    • Hola Agu,

      Es bastante sencillo, selecciona el botón y en el menú de la derecha tienes una propiedad que se llama “Forma” y que seguramente estará en “por defecto” puedes cambiarlo a “redondeada” u “oval” si te interesa.

      Espero haberte ayudado.

      Saludos!

      • Franco Marquetti on 9 marzo, 2016 at 20:27 said:

        Buenas tardes, tengo el mismo problema que “agu”, al colocar una imagen de fondo en un botón, los bordes no se redondean… hay alguna solución?

        Saludos.

        • Iker on 10 marzo, 2016 at 21:24 said:

          Buenas Franco,

          Si quieres colocar una imagen de fondo de un botón, éste pierde la capacidad de poner los bordes redondeados o de cualquier tipo. Es un error que están intentando solucionar. Habrá que esperar a que lo solucionen.

          Saludos!

  2. Hola, si pongo más de 5 botones con imágenes se bloquea la aplicación, hasta 5 funciona excelente!!

    • Iker on 29 marzo, 2016 at 19:36 said:

      Hola Arturo,

      Gracias por la aportación, al final las imágenes ocupan su espacio y el dispositivo tiene que poder procesar todos esos datos. Si utilizas imágenes más pequeñas o incluso sin imágenes, ¿te deja poner más de 5 botones? Porque si no es así entonces ya no creo que sea por las imágenes. Será otra cosa.

      Saludos!

  3. Zager on 1 abril, 2016 at 2:24 said:

    Buenas tardes disculpa, se puede cambiar la ubicación de los botones? Me gustaría no sólo tenerlos así en cascada, quisiera saber como hacerle para poner 2 en un solo nivel, espero tu respuesta, gracias de antemano y gracias por el post

    • Iker on 1 abril, 2016 at 21:11 said:

      Hola Zager,

      Entiendo que lo que quieres hacer es poner varios botones en linea. Para ello puedes utilizar un elemento que se llama “DisposiciónHorizontal”, lo puedes encontrar en la sección “Disposición” en el diseñador de pantallas. Con ese elemento simplemente puedes arrastrar los botones que quieras dentro y se mostrarán en linea uno tras otro.

      Espero haberte ayudado.

      Saludos!

  4. Entey martinez on 5 mayo, 2016 at 19:02 said:

    hola como le hago si quiero que al presionar un boton este ejecute algo hasta que deje de preionarlo sin importar si es un click o lo mantendo presionado.

    ejemplo:
    presiono el boton,– imprime la letra “a” hasta que deje de ´presionarlo,
    no presiono el boton,—– no hace nada
    presiono el boton (“click normal”),– imprime la letra “a” una vez

    ¿como hago eso? podeis ayudarme?

    • Iker on 5 mayo, 2016 at 22:31 said:

      Hola Entey,

      El botón tiene varios eventos a los que puedes llamar. Uno de ellos es cuando se hace click y otro que también existe es el longClick. En estos eventos podrías indicar lo que quieres que se ejecute cuando pasen.

      Si tienes dudas me dices. Espero haberte ayudado.

      Saludos!

      • Pebels2626 on 19 enero, 2017 at 4:07 said:

        Hola buenas, tenia una duda, y esperaba que me pudieras ayudar. Verás, tengo un slider en el que tengo configurado unos valores y estos valores lo manden mediante bluetooth a un arduino, hasta aqui bien; pues lo que necesito es que al dejar de desplazar el dedo sobre el slider y obteniendo los repectivos valores a lo largo de este, que una vez levante el dedo del slider este vuelva a su posicion inicial o de reposo, es decir: 0.

        Se que existe una opción de “levantar” para los botones, pero no encuentro nada parecido para el slider, espero tu respuesta, muchas gracias de antemano.

        Por cierto gran trabajo, ;D

        • Iker on 21 enero, 2017 at 14:17 said:

          Hola Pebels2626,

          Lamentablemente no existe ningún evento que detecte cuando has soltado el dedo del slider. Lo que sí podrías hacer es activar un temporizador para que se active por ejemplo cada vez que cambie de valor el slider. Así si tras 1 segundo por ejemplo sigue teniendo el mismo valor es que has soltado el dedo y por lo tanto podrías reiniciar su valor.

          Quizás te sirva esa opción, prueba a ver que tal y si tienes más dudas me dices.

          Gracias y saludos!

          • Pebels2626 on 23 enero, 2017 at 1:04 said:

            Hola de nuevo Iker, pues ciertamente una lastima no disponer de esa opción en el slider, pero bueno, la solución que me has sugerido no tiene mala pinta, puede que la utilice.

            de todas formas te explico para que pretendía usar la función que te mencionaba, a ver si se te ocurre algún otro método por el que conseguirlo.

            Mi idea era usar el slider como si se tratase de un pedal, como el del acelerador del coche, para controlar vía bluetooth y arduino la velocidad de un motor para un longboard, y pretendía variar la velocidad con el movimiento del slider hasta el momento de levantar el dedo y que volviese al punto inicial, vamos, como cuando levantas el pie del acelerador.

            Perdona por todo el texto, y mil gracias de nuevo, un saludo. ;D

  5. Jesus Santillan on 19 mayo, 2016 at 1:32 said:

    Hola buenas tardes. Muy buena la info que publicas. disculpa sabes como puedo agregar cuadros de texto, botones y etiquetas desde la aplicación para agregar productos a un punto de venta. Lo que quiero hacer es una vez corriendo la aplicacion agregar botones con nimagen o texto que representen productos y que este menú sea editable. agregar, quitar modificar etc. te agradeceria mucho si me orientas o si conoces algun site que hable de esto. Saludos!!!

    • Iker on 20 mayo, 2016 at 17:42 said:

      Hola Jesus,

      A ver si entiendo bien, ¿lo que quieres hacer es una aplicación que permita al usuario crear elementos (botones, cuadros de texto, etiquetas, etc) en la pantalla?

      Saludos!

  6. CAMILO on 28 mayo, 2016 at 8:26 said:

    Hola: Como hago para que un botón que está oculto aparezca después de que se seleccione un elemento en un desplegable?
    Agradezco la ayuda

    • Iker on 28 mayo, 2016 at 14:47 said:

      Hola Camilo,

      Lo primero que debes hacer es desmarcar la opción “visible” si no quieres que se muestre al principio. Después puedes utilizar “Cuando SelecciónDeLista.DespuesDeSeleccion” y añades la pieza “poner boton.visible como” junto con “cierto”. De esta forma al seleccionar algo de la lista se mostrará el botón.

      Saludos!

  7. Rodil on 3 junio, 2016 at 6:02 said:

    Buenas, disculpa se puede cambiar la ubicación de los botones? Me explico mejor: Quiero colocar un boton abajo del otro como estilo MENU, se que esta accion puedo realizarla con una Disposicion Vertical la pregunta en si es si puedo cambiar la ubicación de esa Disposición Vertical. En el Screen lo primero que yo coloco es un Texto que dice Bienvenidos y al colocar seguidamente la Disposición Vertical se me coloca muy pegado al texto que tengo de primero y yo quiero es colocarlo en el medio o un poco mas abajo sin nada de por medio. Es posible posicionarlo con coordenadas? Gracias de antemano por tu respuesta

    • Iker on 3 junio, 2016 at 20:33 said:

      Hola Rodil,

      Si que es posible, tienes la opción también de utilizar un disposición en tabla donde puedes indicar el número de filas y columnas. Además, no tienes porque introducir botones únicamente en esos elementos. Lo que se suele hacer para posicionar elementos como botones, etiquetas, etc. es utilizar una disposición que mejor te venga (vertical, horizontal, tabla) y dentro colocar todos los elementos que necesites, puedes incluso colocar una disposición vertical dentro de otra para tener más precisión.

      Espero haberte ayudado.

      Saludos!

  8. alberto on 9 junio, 2016 at 8:40 said:

    Hola iker una pregunta a ver si me puedes ayudar estoy con una aplicacion pero no se como hacer lo siguiente lo e intentado con varias screen pero no me deja mas de 11
    quiero que se dessspliegue un menu con opciones 1,2,3,4,5,6,7,8,9, etc y que al elegir la opcion me de un texto explicativo de cada uno.
    ejemplo averias de coche elija 1,2,3,4,5,6, etc y al elegir la primera te diga una breve explicacion fallo control abs la 2 fallo sistema de alumbrado
    Gracias espero que me encamines un poco jiji

    • Iker on 12 junio, 2016 at 17:09 said:

      Hola Alberto,

      Para hacer una lista tienes que utilizar el elemento “Selector de lista”. Luego lo que se me ocurre para que al seleccionar un elemento se muestre un texto explicativo es que utilices un elemento “Etiqueta” por cada una de las opciones y que este oculta por defecto. De manera que puedes indicarle a la lista que al seleccionar cambie el estado de la etiqueta a “visible”.

      Dime si te parece bien o si encuentras alguna otra solución. Estaría muy bien saberlo.

      Gracias y saludos!

  9. Daniel on 29 junio, 2016 at 23:11 said:

    Hola Iker, Quería saber como hacer para poder presionar dos botones a la vez y que me ejecute una acción, me explico mejor tengo el botón “Rojo” si lo presiono el fondo se pone rojo y si lo suelto se vuelve a blanco, tengo el botón “Azul” si lo presiono el fondo se pone azul y si lo suelto se vuelve a blanco, lo que quiero hacer es que si yo presiono “Rojo” y a la ves presiono “Azul” el fondo se ponga Violeta.
    Espero que me entiendas y me puedas dar una mano. Gracias.

    • Iker on 2 julio, 2016 at 10:56 said:

      Hola Daniel,

      Lo primero de todo ten en cuenta que normalmente las apps no suelen tener opciones para poder pulsar varias cosas al mismo tiempo. Esto es porque muchos dispositivos móviles no reconocen 2 pulsaciones en distintos sitios. Si pulsas una zona del dispositivo con un dedo y en otra zona pulsas con otro dedo, la primera zona se despulsa.

      Dicho esto, si aún sigues interesado en hacerlo así, te recomiendo que lo hagas de esta manera:
      1.- Utiliza un bloque de pieza que te permita saber cuando se ha pulsado el botón1, por ejemplo, “cuando boton1 presionar”.
      2.- Utiliza variables globales para indicar cuándo se ha presionado cada botón. De esta manera al presionar un botón pones la variable global “boton1” al valor “pulsado” o “verdadero”. Lo mismo haces con el otro botón.
      3.- Al soltar el botón debes hacer lo mismo con las variables para indicar que no están presionados los botones.
      4.- Esto te ayudará a saber qué color debes poner de fondo. Si la variable botón1 es “verdadero” quiere decir que tienes que poner un color, si la variable botón2 es “verdadero” entonces otro color. Pero si ambas variables son “verdaderas” el color es violeta.

      Espero haberte ayudado, si no me mandas un email y te lo explico mejor.

      Saludos!

  10. Maricel on 31 julio, 2016 at 17:43 said:

    Hola, quiero presentar un botón con una imagen de fondo y cuando se hace clic quiero reemplazar esa imagen por otra.
    Gracias!

    • Iker on 6 agosto, 2016 at 12:37 said:

      Hola Maricel,

      Para conseguir lo que buscas tendrás que utilizar la pieza de “cuando boton.click ejecutar” y ahí dentro incluyes la pieza de “poner boton.imagen como” y añades la ruta a donde tienes la imagen en el dispositivo.

      Espero haberte ayudado, si sigues teniendo dudas me dices.

      Saludos!

  11. hola como hago para que un boto llame un app instalada en el movil

    • Iker on 6 agosto, 2016 at 12:49 said:

      Hola jm,

      De momento appInventor 2 solo permite abrir otra app que sea nativa del dispositivo (por ejemplo, navegador web, cámara de fotos, mapa, etc) o una app que hayas hecho tu anteriormente con app inventor.

      Si es ese el caso coméntame y te ayudaré en lo que pueda. De lo contrario ya lo siento pero no es posible de momento.

      Saludos!

  12. hola, buenos dias, quisiera saber como puedo cambiar de lugar dos botones al mismo tiempo, que esos botones queden encima de una imagen, mas bien seleccionar ambos y arrastrarlos hasta cierta posicion.

    • Hola Lili,

      No entiendo muy bien tu pregunta, te refieres que el usuario cuando arranca la aplicación pueda arrastrar los botones? o a la hora de diseñar la app colocar 2 botones en una zona concreta?.

      Para la colocación de elementos lo mejor es utilizar “arrangement” ya sea vertical, horizontal o tabla. Esto te permitirá alinear los botones e incluso poner otro elemento debajo (como por ejemplo una imagen).

      Saludos!

  13. hola muchas gracias por estos tutoriales, queria saber como hacer para utilizar botones en simultaneo ej boton 1 +boton 2+boton3=X PERO SI PRESIONO BOTON1+BOTON2=Y Y ASI SUCESIVAMENTE MUCHAS GRACIAS SALUDOS!!!

    • Hola walter,

      Comprendo la funcionalidad que buscas pero no entiendo muy bien el objetivo de ello. En los dispositivos móviles es muy dificil que se tenga que pinchar en varios puntos al mismo tiempo (con excepciones como por ejemplo para hacer zoom con los 2 dedos). Normalmente un dispositivo portatil no reconoce más de 2 puntos al mismo tiempo porque no suele tener sentido que quieras hacer tantas cosas a la vez.

      Por este motivo yo te recomendaría si es posible darle una pensada y enfocarlo de otra manera para evitarte problemas de funcionamiento.

      Si no se te ocurre nada puedes enviarme un email y te ayudaré en lo que pueda.

      Saludos!

  14. adan ruelas on 5 octubre, 2016 at 0:23 said:

    GRACIAS POR TUS TUTORIALES, QUIERO QUE ME ORIENTES PORFAVOR, CUANDO PRESIONO UN BOTON QUE EJECUTE UNA INSTRUCCION Y CUANDO LO SUELTE QUE NO LO HAGA, POR EJEMPLO CUANDO PRESIONO EL BOTON LLAMA AL BLUETHOOT Y MANDA UN TEXTO CON LA LETRA “A” Y CUANDO LO SUELTE EL BOTON QUE NO LA EJECUTE LA INSTRUCCION, CUALES COMANDOS SERIAN DEL BLOQUE? MAS QUE NADA NECESITO LOS COMANDOS PARA QUE CUANDO SUELTE EL BOTON ..GRACIAS POR TUS COMENTARIOS

    • Iker on 9 octubre, 2016 at 11:27 said:

      Hola adan,

      Creo que lo que buscas y lo que sería más intuitivo es que un mismo botón lo puedas pulsar una vez para activar algo, y luego al pulsar otra vez se desactive. Al final es como un interruptor. Para ello simplemente puedes crear una variable que se llame “activado” y le indicas que tiene valor “false”. En el momento en que el usuario pulsa el botón, esa variable la cambias a “true” y así ya sabes que se ha pulsado anteriormente. Luego cuando vuelvas a pulsar el botón la cambias de nuevo. Y así cada vez. A la hora de pulsar el botón tendrías que comprobar “si la variable es true” le cambias el valor a “false” y si no a “true”.

      Dime si así te sirve.

      Saludos!

  15. Mario Mejías on 27 octubre, 2016 at 3:52 said:

    Hola, si tengo una app con bluetooth, y quiero que al momento de presionar el boton ”a” funcione, pero cuando lo dejo de presionar necesito que mande un text ”c” como irían los bloques?? Ayuda por favor

    • Hola Mario,

      Entiendo que estas utilizando el componente Bluetooth client, es decir, tu dispositivo se conecta a otro y no al revés. En ese caso puedes utilizar el bloque del botón “TouchUp” para que cuando sueltes ese botón presionado ocurra algo. En este caso para enviar un texto al otro dispositivo puedes utilizar el bloque del Bluetooth llamado “SendText” donde le indicas qué texto quieres enviar.

      Espero haberte ayudado, si no es así me dices y te ayudaré en lo que pueda.

      Saludos!

  16. DIEGO OCHOA RIVAS on 10 noviembre, 2016 at 7:16 said:

    hola, quisiera saber si alguien me podria ayudar .
    Yo quiero hacer que teniendo varios botones en un screen todos me manden a otra screen pero con diferentes propiedades o contenido ,quisiera que al pasar con diferente boton , me cargue en la siguiente screen un fondo diferente …espero que me hayan podido entender … y les agredecería su ayuda 😀

  17. Daniel on 2 diciembre, 2016 at 2:55 said:

    Hola, quisiera saber como puedo crear un botón que al pulsarlo se salga de la aplicación.
    Gracias de antemano.

    • Hola buenas Daniel,

      En los bloques de piezas de control, hay uno que se llama “close application” que sirve para salir de la aplicación. Podrías probar a usar ese cuando haces click en un botón.

      Si tienes dudas me dices.

      Gracias y saludos!

  18. Manuel on 3 diciembre, 2016 at 9:10 said:

    Hola muy buen día, disculpa las molestias, estoy empezando en esto de las app´s y estoy algo atorado, lo que pasa que quisiera poder hacer el diseño de un joystick de un control de videojuego, para poder controlar un carro por bluetooth es posible crear ese tipo de botones en app inventor, así como poner botones seleccionadores de on-off al estilo de los que tiene LG en algunos de sus moviles, como tipo interruptores, por tu atención muchas gracias.

    • Hola Manuel,

      Para los botones de tipo interruptores no hay problema. Simplemente tendrás que controlar cada vez que se pulsa para cambiar de estado “activado” o “desactivado”.

      Con respecto al tema del joystick, no se cómo tienes planteado que funcione. Lo más probable es que tengas que utilizar el elemento canvas para dibujar un joystick y poder moverlo. Eso ya es más complicado y aun así no te se decir si sería posible con appInventor hacer lo que quieres porque no he intentado hacer nada de eso.

      Te agradecería si me informaras si consigues algo.

      Muchas gracias!

      • Manuel on 10 diciembre, 2016 at 18:47 said:

        bueno lo que intento hacer es básicamente dibujar ese joystick y lo de los interruptores me refería a como puedo hacer para que tengan esa forma de interruptores te agradecería si pudieras informarme en como puedo comunicarme contigo para que pueda mostrarte imagenes de lo que más o menos quiero hacer y tengas una mejor y así ayudarnos ambos si gusta por tu atención gracias

        • Buenas,

          A los botones se les puede poner una imagen de fondo de manera que parezca un interruptor e incluso se pueden cambiar para que parezca que está pulsado o no.

          Puedes escribirme un email si quieres.

          Saludos!

          • Manuel on 13 diciembre, 2016 at 22:51 said:

            Buenas,

            Gracias por su atención, pudiera decirme en que parte encuentro su email, el mio lo dejo en la parte que lo requier para poder realizar los comentarios, espero su respuesta Gracias nuevamente.

  19. Marcos on 13 diciembre, 2016 at 22:09 said:

    Hola discupa yo quiero hacer que los botones esten horizontales uno al lado de otro . Desde ya muchas gracias

    • Hola Marcos,

      Para ello tienes que utilizar un elemento que se llama “HorizontalArrangement” está en el apartado “Layout” cuando estás en el diseñador. Esto te va a permitir alinear de forma horizontal varios elementos. En tu caso solo tendrías que meter dentro de este elemento los botones.

      Saludos!

  20. Emilio Zambrano on 22 enero, 2017 at 1:08 said:

    Hola que tal estoy haciendo una aplicación y me surgió un problema, una vez que presiono el botón no puedo volverlo a presionar. Queria saber si existe alguna manera que ese botón vuelva a estar disponible luego de soltarlo, así como un botón pulsador que baja y luego se libera. Saludos.

    • Iker on 22 enero, 2017 at 12:11 said:

      Hola Emilio,

      Los botones puedes pulsarlos las veces que quieras. El funcionamiento por defecto del botón es ese, que puedas pulsarlo las veces que quieras. Otra cosa muy distinta sería si quieres que un boton quede presionado cuando lo pulsas, y volviendo a pulsarlo se libere (igual que un interruptor).

      ¿Cuál sería tu caso?
      De todas formas tienes opciones para controlar cuando un botón se pulsa o cuando se deja de presionar con los eventos “click”, “touchDown” y “touchUp”.

      Dame más información si no te sirve lo que te he dicho.

      Gracias y saludos!

  21. oscar on 24 enero, 2017 at 11:07 said:

    buenos días,
    soy nuevo en estoy.
    estoy desarrollando una app de turismo.
    la cual queria dividir en categorias, bares, alojamientos, empresas de piraguas, senderismo, etc. ¿que pasa? que la app me ocupa mas de 15 pantallas y me excede el limite del app inventor, a parte de el peso de la misma, que también me da un error.
    quería saber como lo planearíais vosotros, a ver si me podéis dar alguna idea de como llevarla a cabo.
    un saludo. gracias

    • Iker on 28 enero, 2017 at 19:48 said:

      Hola Oscar,

      Lo primero de todo asegúrate de que cada vez que abres una nueva pantalla, cierras la anterior porque de lo contrario se satura la memoria de la app y del dispositivo y esto puede hacer que se bloquee o que de un error. Si tienes eso hecho no deberías tener problema con las pantallas. De todas formas si quieres un consejo te recomendaría que revises si realmente son necesarias tantas pantallas. Una app debe ser sencilla e intuitiva para que el usuario no se pierda ni se confunda al utilizarla.

      Me dices si sigues teniendo problemas y te ayudaré en lo que pueda, ¿ok?

      Saludos!

  22. Tomás Gómez on 1 febrero, 2017 at 11:55 said:

    Buenos días, estoy haciendo una aplicación de un mapa que cuando por voz digas algún sitio, te diga donde esta situado con una bola roja, para ello pongo la bola como no visible y cuando dice el lugar lo pongo visible, el problema es que cuando la bola aparece no esta situada en el sitio que yo había puesto y no se el porque.
    Me podríais decir en que estoy fallando y donde esta la solución a mi problema?
    Muchas gracias de antemano.
    Un Saludo.

    • Iker on 4 febrero, 2017 at 11:01 said:

      Hola Tomás,

      ¿Podrías decirme cómo has hecho la bola? ¿Qué has usado para crearla? Necesitaría más información para poder echar un vistazo y ayudarte.

      Gracias y saludos!

      • Tomás Gómez on 6 febrero, 2017 at 13:36 said:

        La bola es una Spriteimagen, es una imagen descargada de google y retocada con gimp para hacerla mas pequeña.

        • Iker on 6 febrero, 2017 at 20:22 said:

          Hola Tomás,

          El objeto SpriteImage tiene las propiedades “X”, “Y” y “Z” que indican las coordenadas de la imagen dentro del canvas. ¿Te has asegurado de indicar un valor en cada uno de esos parámetros? Aunque sea invisible la bola, la clave está en esas coordenadas. Siempre tienen que tener un valor.

          Tienes que saber las coordenadas del sitio donde quieres que aparezca la bola para que se muestre en esa posición. Para ello puedes usar el evento “MoveTo” al que le indicas las coordenadas donde quieres que se mueva la bola.

          Me dices si te sirve.

          Gracias y saludos!

          • Tomás Gómez on 8 febrero, 2017 at 11:50 said:

            Hola Iker,
            Muchas gracias por tu ayuda te lo agradezco mucho, me ha servido y ahora funciona todo bien.

            Gracias y saludos.

  23. josepht on 3 marzo, 2017 at 1:35 said:

    hola, necesito ayuda, quiero saber como desabilitar los botones al presionar otro, por ejemplo presiono el boton 1 y ya no me dejara presionar el boton 2,3, y 4, quiero saber como se hace gracias

    • Iker on 4 marzo, 2017 at 19:49 said:

      Hola Josepht,
      Para hacer lo que buscas tienes que controlar que cada vez que el usuario haga click en uno de los botones, desabilitar los demás. Para ello tienes el bloque “When boton1. click” y ahí puedes meter el bloque “set boton2.enabled to” y le indicas “false”. De esta forma se desactiva el botón que quieras.

      Saludos y ánimo con tu proyecto!

  24. Saludos, excelente información. Quería preguntarle a toda la comunidad y en especial al moderador: puedo cambiar la imagen de fondo del botón mediante el clic en el mismo botón? Gracias de antemano!

    • Iker on 11 marzo, 2017 at 9:14 said:

      Hola Alberto,

      Claro que puedes, debes utilizar el bloque “when boton.click do” y dentro usar el “set boton.image to” y ahí le indicas la ruta hasta donde tienes la imagen guardada en el dispositivo.

      Saludos!

  25. Erick on 20 marzo, 2017 at 20:29 said:

    Una pregunta cómo puedo hacer para apretar dos botones al mismo tiempo ya que con touch down solo me deja apretar un boton

    • Iker on 1 abril, 2017 at 14:16 said:

      Hola Erick,

      Mi consejo es que le des una vuelta al planteamiento de tu app ya que no es habitual que se quiera controlar la pulsación de 2 botones al mismo tiempo. De hecho hay dispositivos que no reconocen pulsar 2 botones al mismo tiempo. Quizás te sirva el planteamiento de poder pulsar primero un botón y controlar que el usuario dispone de 2 segundos para poder pulsar otro. Es una idea.

      Si no te sirve puedes decirme cuál es tu idea de los botones y te ayudaré a buscar alguna manera para solventar el problema.

      Saludos!

  26. walter on 23 marzo, 2017 at 20:10 said:

    hola gracias por la información compartida es de gran utilidad, quería preguntarte como hago para hacer funcionar botones en simultaneo saludos !!!

    • Iker on 1 abril, 2017 at 14:19 said:

      Hola Walter,

      ¿Cuál es el planteamiento que has decidido para tu app? Hay dispositivos que no reconocen la pulsación de 2 botones al mismo tiempo así que no es muy recomendable. Si quieres puedes mandarme un correo explicándome un poco tu idea y te ayudaré encantado a solventar tu problema quizás con otra perspectiva o así.

      Muchas gracias y saludos!

  27. Mauricio on 2 junio, 2017 at 6:00 said:

    Por favor necesito que un botón inicie cierta acción cuando se lo presiona y detenga la acción cuando se lo deja de presionar, ya sé que hay otras opciones como presionarlo dos veces, pero necesito saber si se puede hacer de la primera forma, si no se puede por favor dímelo. Gracias!!

    • Iker on 3 junio, 2017 at 11:44 said:

      Hola Mauricio,

      Es posible hacer tal como quieres. Para ello, lo que debes hacer es controlar cada vez que se pulsa el botón. Por ejemplo con una variable que se llame “pulsado”. Cuando pulsas el botón compruebas si esa variable es “verdadera” o “falsa”. Si es verdadera es que el botón ya se ha pulsado anteriormente así que deberás parar la acción y cambiar la variable a “falsa”. En caso de que la variable sea “falsa” es que no se ha pulsado el botón por lo que puedes iniciar la acción y poner la variable a “verdadera”

      Espero haberte ayudado. Si tienes dudas puedes escribirme aquí o enviarme un email a ivillarroel.programarapps@gmail.com.

      Gracias y saludos!

  28. ivan garcia on 2 junio, 2017 at 17:07 said:

    Hola necesito ayuda!!! Soy nuevo y tengo un proyecto. ivanlgarcia28@gmail.com por favor contactenme

  29. Fernando on 9 junio, 2017 at 6:33 said:

    Hola Iker tengo una consulta, se puede sacar una foto apretando solo un boton? es decir que no solo llame a la cámara sino que además saque la foto automáticamente, y por otro lado tengo la duda si estas aplicaciones funcionan con cualquier versión de android y si funcionarán con las que aparezcan posteriormente. Saludos.

    • Iker on 11 junio, 2017 at 11:34 said:

      Hola Fernando,

      Supongo que ya conocerás el elemento “Camera” que tiene appInventor para poder activarla. Si no es así, te recomiendo que lo uses porque en los bloques dispone de una función que es “TakePicture” con el que directamente sacarás una foto. ¿Entiendo que eso es lo que quieres verdad? Prueba a ver qué tal te va.
      Por otro lado, en general estas apps suelen funcionan en la mayoría de los dispositivos Android. También depende de qué elementos utilices y de cómo hayas diseñado tu app (si por ejemplo consume mucha memoria es posible que algunos dispositivos viejos no puedan ejecutarla o se les bloquee por falta de memoria). Con los nuevos no suele haber problema.

      Espero haberte ayudado.

      Saludos!

  30. Fernando on 13 junio, 2017 at 23:48 said:

    Iker cuando activo “take picture” me lleva a la cámara, pero para sacar la foto tengo que presionar el botón de la cámara, lo que necesito es que la foto se saque automáticamente sin apretar ningún otro botón, por ejemplo una aplicación que al detectar un movimiento delante de la cámara saque una foto sin que nadie intervenga, será posible?

    • Iker on 17 junio, 2017 at 12:03 said:

      Hola Fernando,

      Tienes razón, el método solamente sirve para abrir la cámara para que se pueda sacar una foto pero no lo hace automáticamente. Al parecer appInventor no dispone de esa funcionalidad ni tampoco dispone de una forma para detectar movimiento ya que normalmente los dispotivos móviles no tienen esa capacidad (a no ser que precisamente sea una cámara de seguridad para detectar movimiento).

      Siento no haberte podido ayudar.

      Saludos!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Post Navigation

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies