我想创建一个仅在我的应用中使用的自定义键盘。我已经做了一切来制作一个简单的自定义键盘,让我输入一些单词。当我在谷歌和Android文档上浏览一些关于自定义键盘的教程时,我看到键可以有这个属性:android:isSticky,这使得键成为切换键。 但似乎没有办法获得切换键的当前状态。
答案 0 :(得分:2)
花了我很多年才找到这个。几乎是出于绝望,我偶然发现了一个解决方案。
我确信有更好的方法,但这就是我做的方式:
List<Key> mKeyboardViewKeys = mKeyboardView.getKeyboard().getKeys();
for (Key k : mKeyboardViewKeys) {
if ((k.code[0] == stickyKeyCode) && (k.on)) {
// sticky key is ON
}
}
我还设法通过调用onPressed()
方法并在StateListDrawable
xml中定义具有不同颜色的drawable来获得粘滞键更改颜色。
正如我所说..必须有更好的方法,但......