0 votos
Hay alguna forma de saber si mi teclado esta mostrándose o no?

Queda muy feo poner un toast y que esté el teclado en pantalla, por ejemplo.
preguntado por chicocadiz Mar 14, 2015 en Android

1 Respuesta

+1 voto
Mejor respuesta
Directamente no se puede saber si hay un teclado mostrándose o no (Hay trucos en Internet de calcular el tamaño de la pantalla y restarlo respecto a la Activity, pero no te asegura que sea un teclado lo que reduzca el tamaño de la pantalla).

Por otro lado, lo que se suele hacer en estos casos es cambiar la posición del Toast para que salga arriba de la pantalla, así no hay problema con el teclado.
respondido por Ramon [Admin] Mar 14, 2015
seleccionada por chicocadiz Mar 14, 2015
Gracias otra vez, Ramón. Poner el Toast siempre en el medio de la pantalla tampoco me parece muy estético, por eso buscaba alguna solución.

Mira que no poder hacerse algo tan simple. Supongo que crear un teclado propio sería más trabajo de un ingeniero (por lo dificultoso) que de un aficionado a esto que está aprendiendo, verdad?

Por otro lado,¿ se podría saber por el cambio de colores de los pixeles en la activity? ¿ O eso no se podría medir? Saludos.
Más bien en la parte superior de la pantalla, no queda mal, sobre todo porque se va a ver durante unos segundos. De cualquier manera, también existen otras maneras de avisar al usuario.

Por el color de los pixeles detectas lo que hay en el Activity, no lo que hay encima. Y hacer un teclado es algo bastante gordo como para dedicarle tiempo (al menos que quieras hacer un teclado como tal).

Aún así, el usuario de Android ya están acostumbrados a que los Toast suelen aparecer encima del teclado, por lo que tampoco se van a asustar ;)
Pues gracias, Ramón. Me quedo con un sabor agridulce.

Lo que más me molesta es que yo siempre pensé que en informática siempre había la posibilidad de hacer cualquier cosa, sólo era cuestión de descubrir cómo hacerla, pero veo que esto es un caso sin resolver ;(

Un abrazo.
Poder se puede hacer casi cualquier cosa. A veces nos limita el Framework con el que trabajemos y sus posibilidades. Existen trucos que nos facilitan las cosas. Para otras cosas hay que dedicar mucho empeño y horas. Y también está el buscar alguna biblioteca que pueda ayudarnos.

Para que sirva de motivación y por quitar el sabor agridulce :) a diferencia de otros sistemas operativos, en Android puedes hacer cualquier cosa, lo único que ya tienes que tocar código nativo en C a través del NDK.