¿Cómo cambiar el color de fondo de la tecla para el teclado suave de Android?

Estoy implementando teclado personalizado en Android. Acabo de leer la documentación en "developer.android.com" y he visto una muestra con el teclado virtual. Todo lo que puedo hacer es cambiar el fondo del teclado, cambiar la ubicación de los botones, establecer keyIcon en lugar de keyLabel a key.

Pero todavía no puedo cambiar el fondo y el color de la llave.

Por favor escriba algún código de ejemplo de XML o fuente. ¡Gracias!

Mi muestra donde cambio de fondo:

    public class GBInput extends InputMethodService implements KeyboardView.OnKeyboardActionListener{
    ...
    private GBKeyboardView mInputView;
    @Override
        public View onCreateInputView() {
            mInputView = (GBKeyboardView) getLayoutInflater().inflate(R.layout.input, null);
            mInputView.setOnKeyboardActionListener(this);
            mInputView.setKeyboard(mQwertyKeyboard);
            mInputView.setBackgroundResource(R.color.keyboard_background);
            return mInputView;
        }
    ...
    }

Y necesito algo así:

Imágenes para todos los botones: es una mala idea, así que quiero encontrar un problema mejor.

Respuestas a la pregunta(2)

Su respuesta a la pregunta