Superposición de teclas de teclado de Android

Tengo curiosidad acerca de cómo puedo implementar la superposición siguiente en algún botón o presionar teclas como se muestra en la siguiente imagen? Estoy implementando teclado personalizado … necesitaba esto para lo mismo.

Introduzca aquí la descripción de la imagen

EDITAR:

Por lo tanto, he implementado un teclado como el siguiente utilizando un GridView.

Introduzca aquí la descripción de la imagen

Ahora, estoy intentando poner un cierto overlay (en tecleo) como en teclado del defecto.

Gracias 🙂

Lo que buscas es "vista previa clave" Supongo que estás usando KeyboardView para crear tu teclado personalizado. Puede activar la vista previa de la clave llamando a setPreviewEnabled (boolean previewEnabled) debería ser algo así: mKeyboardView.setPreviewEnabled(true);

Editar:

Creo que este enlace le ayudará en su implementación y explica más en detalle lo que estaba tratando de hacer.

En primer lugar, crear un diseño para el teclado, por lo general, sólo contiene un keyboardView:

 <?xml version="1.0" encoding="UTF-8"?> <android.inputmethodservice.KeyboardView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/keyboard" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:keyPreviewLayout ="@layout/preview" /> 

Y luego crear otro diseño para la vista previa:

 <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:background="#ffff00" android:textStyle="bold" android:textSize="30sp"> </TextView> 

Después de que diseñar el teclado en su caso algo así:

 <Keyboard xmlns:android="http://schemas.android.com/apk/res/android" android:keyWidth="10%p" android:horizontalGap="0px" android:verticalGap="0px" android:keyHeight="60dp"> <Row> <Key android:codes="49" android:keyLabel="1" android:keyEdgeFlags="left"/> <Key android:codes="50" android:keyLabel="2"/> <Key android:codes="51" android:keyLabel="3"/> </Row> <Row> <Key android:codes="52" android:keyLabel="4"/> <Key android:codes="53" android:keyLabel="5"/> <Key android:codes="54" android:keyLabel="6"/> </Row> <Row> <Key android:codes="55" android:keyLabel="7"/> <Key android:codes="56" android:keyLabel="8"/> <Key android:codes="57" android:keyLabel="9"/> </Row> </Keyboard> 

Por último, en su código java que inflar su keyboardView o lo obtiene por su id si se incluye en un fragmento o el diseño de la actividad. Y usted fijó el teclado que usted diseñó a él.

 kv = (KeyboardView)getLayoutInflater().inflate(R.layout.keyboard, null); keyboard = new Keyboard(this, R.xml.numeric); kv.setKeyboard(keyboard); kv.setOnKeyboardActionListener(this); 

la mejor de las suertes.

Utilice un PopupWindow para la funcionalidad de vista previa de la clave (Realmente hice lo mismo en mi último proyecto IME).

Te recomiendo usar una clase de niño de KeyboardView ya que le ofrece un montón de funtions para hacer las cosas eay.Cada vez que se presiona la key , el onPressed se llama de vuelta y entonces usted sabe cuál es presionado. Y sumergirse en el código fuente de KeyboardView , puede aprender dónde colocar su popupWindow de la clase.

Sólo un pequeño esfuerzo. Pero si su clase no se deriva de KeyboardView (como usar un GridView ), tendrá que tomar más tiempo para entenderlo. De todos modos, el código fuente es un buen comienzo.

  • ¿Posible superponer un botón encima de otro?
  • ¿Cómo almacenar en caché android.graphics.path o Bitmap cuando se usan Overlays?
  • Cómo forzar mezcla alfa en un videoview
  • ¿Cómo capturar eventos onTouch en dos vistas superpuestas?
  • Android: Combina dos vistas de imagen superpuestas en un bmp con la posición correcta
  • Superponer un color sobre una vista
  • Agrega una superposición transparente mayor para aumentar el área de clic, sin cambiar el diseño.
  • Cómo agregar vista de superposición sobre otra vista en android?
  • Cómo crear un diseño de superposición en una vista de lista
  • Dibuja rejilla sobre polígono en Google map V2
  • Android - vistas de servicio
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.