Android键盘按键叠加

我很好奇如何在某些按钮或按键上实现以下叠加,如下图所示? 我正在实现自定义键盘……需要这个东西。

在此处输入图像描述

编辑:

所以,我已经使用Gridview实现了如下的键盘。

在此处输入图像描述

现在,我试图在默认键盘上放置一些叠加(点击)。

谢谢 :)

您正在寻找的是“关键预览”我假设您正在使用KeyboardView来创建自定义键盘。 您可以通过调用setPreviewEnabled(boolean previewEnabled)来启用键预览,它应该是这样的: mKeyboardView.setPreviewEnabled(true);

编辑:

我认为此链接将帮助您实施,并详细解释我的目标。

首先为键盘创建一个布局,通常它只包含一个keyboardView:

 < ?xml version="1.0" encoding="UTF-8"?>  

然后为预览创建另一个布局:

 < ?xml version="1.0" encoding="utf-8"?>   

之后你就可以在你的情况下设计你的键盘:

                  

最后在您的java代码中,您可以为您的keyboardView充气,或者如果它包含在片段或活动布局中,您可以通过它获取它。 并设置您设计的键盘。

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

祝你好运。

使用PopupWindow进行键预览function(实际上我在上一个IME项目中做了同样的事情)。

我建议你使用一个子类的KeyboardView因为它为你提供了许多function,使得你可以做任何事情。每次按下键时, onPressed会被回调,然后你知道哪一个被按下了。 深入了解KeyboardView的源代码,您可以了解从类中放置popupWindow位置。

只需一点努力。 但是如果你的类不是从KeyboardView派生的(比如使用GridView ),你将需要花费更多的时间来弄明白。不管怎样,源代码是一个好的开始。