gpt4 book ai didi

Android handle 'search' 自定义键盘上的按钮按下

转载 作者:行者123 更新时间:2023-12-01 16:20:39 27 4
gpt4 key购买 nike

我正在开发自己的自定义键盘。

如果我们的键盘使用 IME_ACTION_SEARCH 参数打开,如何处理按下“搜索”按钮?

我有以下代码,但不幸的是在搜索情况下它不起作用。在常规情况下,使用“完成”按钮效果很好。

        final int options = this.getCurrentInputEditorInfo().imeOptions;
final int actionId = options & EditorInfo.IME_MASK_ACTION;

switch (actionId) {
case EditorInfo.IME_ACTION_SEARCH:
ic.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_SEARCH));
break;
default:
ic.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER));
}

谢谢

最佳答案

我找到了解决方案:

endDefaultEditorAction(true);

它是InputMethodService的一个方法

完整代码为:

    case Keyboard.KEYCODE_DONE:
final int options = this.getCurrentInputEditorInfo().imeOptions;
final int actionId = options & EditorInfo.IME_MASK_ACTION;

switch (actionId) {
case EditorInfo.IME_ACTION_SEARCH:
sendDefaultEditorAction(true);
break;
case EditorInfo.IME_ACTION_GO:
sendDefaultEditorAction(true);
break;
case EditorInfo.IME_ACTION_SEND:
sendDefaultEditorAction(true);
break;
default:
ic.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER));
}

break;

关于Android handle 'search' 自定义键盘上的按钮按下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62293145/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com