【问题标题】:How to make delete key- delete all selected edit text in custom android keyboard如何制作删除键 - 删除自定义 android 键盘中所有选定的编辑文本
【发布时间】:2016-10-26 13:55:17
【问题描述】:

我正在创建自定义 android 键盘,如果选择了删除键,我希望删除所有编辑文本。

i.e, when text is selected, clipboard(cut,copy,paste comes up);在那种模式下,如果按下删除键,它应该删除所有。目前没有。

P.S 不要告诉我特定的编辑文本,它是一个自定义键盘,它无法访问编辑文本。

【问题讨论】:

    标签: android keyboard android-softkeyboard android-input-method inputconnection


    【解决方案1】:

    我不明白为什么它不会。在我创建的键盘中,我只是发送删除键事件,它就像一个魅力。在选择某些内容时按下删除/退格键时尝试以下操作。

    getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_DEL));
    getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP,KeyEvent.KEYCODE_DEL));
    

    【讨论】:

    • 当我制作自定义编辑器时,我忘记了我必须以KeyEvent 处理删除。这是有道理的,我还必须从另一个方向将它作为关键事件发送。
    【解决方案2】:

    您还可以查看InputConnection 是否有任何带有getSelectedText 的选定文本。如果有则删除它(如果没有则删除前面的字符)。

    CharSequence selectedText = inputConnection.getSelectedText(0);
    if (TextUtils.isEmpty(selectedText)) {
        inputConnection.deleteSurroundingText(1, 0);
    } else {
        inputConnection.commitText("", 1);
    }
    

    【讨论】:

    • 但不要忘记表情符号
    猜你喜欢
    • 1970-01-01
    • 2012-12-02
    • 2020-02-16
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 2023-04-11
    • 1970-01-01
    相关资源
    最近更新 更多