繁体   English   中英

以编程方式设置Keyboard.Key图标

[英]Programmatically set Keyboard.Key icon

我正在使用Android的KeyboardKeyboardView类为EditText制作自定义键盘(使用本教程 )。

在我的keyboard.xml文件中,我为班次键设置了一个图标。 但是,当启动换档时,我还有另一个图标要显示。 但是,我找不到允许我执行此操作的方法。

代替setter方法,在Keyboard.Key类中有一个公共图标字段 只需重新分配该字段的值即可更改键的图标。

Keyboard.Key key = findKey(myKeyboard, keyCode);
key.icon = myDrawable;

private Keyboard.Key findKey(Keyboard keyboard, int primaryCode) {
  for (Keyboard.Key key : keyboard.getKeys()) {
    if (key.codes[0] == primaryCode) {
      return key;
    }
  }
  return null;
}

要在键盘上查找Shift键,只需使用

Keyboard.Key shiftedKey = keyboard.getKeys().get(keyboard.getShiftKeyIndex())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM