Me gustaría jugar con algunas ideas y desarrollar un teclado virtual para Android para reemplazar el predeterminado.
¿Existe alguna información general sobre el desarrollo de teclados virtuales para Android? ¿Alguna mejor práctica o pauta?
¿Puedo hacer con mi aplicación de teclado prácticamente cualquier cosa que pueda hacer con una aplicación normal de Android?
¿Puedo hacer conexiones HTTP para sincronizar los datos del teclado con una base de datos en la nube y otros teléfonos que tengo?
¿Puedo abrir otras ventanas / pantallas presionando una tecla, por ejemplo, para mostrar una interfaz de entrada personalizada diferente a una QWERTY normal? Si eso no funciona, ¿puedo usar un cuadro de diálogo emergente en su lugar?
Crear teclado personalizado para su propio texto de edición
Descargar el código completo
En esta publicación, creé un teclado simple que contiene algunas teclas especiales como (teclas de Francia) y es compatible con letras mayúsculas y minúsculas y teclas numéricas y algunos símbolos.
fuente
Un buen lugar para comenzar es la aplicación de muestra proporcionada en los documentos para desarrolladores .
Eche un vistazo a otros IME para ver a qué debería apuntar. Algunos (como el oficial) son de código abierto.
fuente
En primer lugar, debe definir un archivo .xml y crear la interfaz de usuario del teclado en él:
En este ejemplo tiene 4 filas y en cada fila tiene 3 llaves. también puedes poner un icono en cada tecla que quieras.
Entonces debe agregar la etiqueta xml en la interfaz de usuario de su actividad de esta manera:
También en su archivo de actividad .java debe definir el teclado y asignarlo a un EditText:
Este código asigna inputSearch (que es un EditText) a su teclado.
fuente