我正在创建自定义安卓键盘,我想删除所有编辑文本的删除键。
即,当选择文本时,剪贴板(剪切,复制,粘贴)出现;在该模式下,如果按下删除键,则应删除全部。它目前没有。
P.S不要告诉我一个特定的编辑文本,它是一个自定义键盘,它将无法访问编辑文本。
答案 0 :(得分:2)
我不明白为什么不会。在键盘中,我创建了,我只是发出删除键事件,它就像一个魅力。在选择某些内容时按下删除/退格键时,请尝试以下操作。
getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_DEL));
getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP,KeyEvent.KEYCODE_DEL));
答案 1 :(得分:1)
您还可以查看InputConnection
是否包含getSelectedText
的所选文字。然后删除它(如果没有则删除前面的字符)。
CharSequence selectedText = inputConnection.getSelectedText(0);
if (TextUtils.isEmpty(selectedText)) {
inputConnection.deleteSurroundingText(1, 0);
} else {
inputConnection.commitText("", 1);
}