如何制作动态键盘。当我从键盘上点击时,所有关键文字都会改变

时间:2015-08-14 05:11:10

标签: android input ime android-input-method

我正在制作输入法服务我的问题是当我触摸一个键时如何更改键中的文本。 我已经有类似的数组:

String [] textDynamic = new String[] { "a", "b" ,"i", "c" .....}

当我触摸键盘上的任何键时,此阵列加载所有文本都会出现在键盘上。

1 个答案:

答案 0 :(得分:2)

提交当前密钥后,您必须在onKey() InputMethodService方法中使用此代码。

@Override
public void onKey(int primaryCode, int[] ints) {
    -----
    -----
    conn.commitText(String.valueOf(code), 1);

    List<Keyboard.Key> keys = kv.getKeyboard().getKeys();

    for (Keyboard.Key key : keys) {

         // you can set any codes & labels to the all the keys in this loop
         // this is just an example of how it's done...
            key.codes = new int[]{12, 13, 14};
            key.label = "P";

     }

    -----
    -----
}

如果一个键只有一个字符,则代码数组只有一个int。

您可以将其与逻辑合并,从阵列中生成随机密钥。

希望这有帮助。