如何制作删除键 - 删除自定义 android 键盘中所有选定的编辑文本
How to make delete key- delete all selected edit text in custom android keyboard
我正在创建自定义 android 键盘,我想用删除键删除所有选中的编辑文本。
即,当文本被选中时,剪贴板(出现剪切、复制、粘贴);在那种模式下,如果按下删除键,它应该删除所有。目前没有。
P.S不要告诉我特定的编辑文本,它是自定义键盘,它无法访问编辑文本。
我不明白为什么不会。在我创建的键盘中,我只是发出删除键事件,它就像一个魅力。在选择某些内容时按下 delete/backspace 键时尝试以下操作。
getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_DEL));
getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP,KeyEvent.KEYCODE_DEL));
您还可以查看 InputConnection
是否有任何带有 getSelectedText
的选定文本。如果有则删除它(如果没有则删除前面的字符)。
CharSequence selectedText = inputConnection.getSelectedText(0);
if (TextUtils.isEmpty(selectedText)) {
inputConnection.deleteSurroundingText(1, 0);
} else {
inputConnection.commitText("", 1);
}
我正在创建自定义 android 键盘,我想用删除键删除所有选中的编辑文本。
即,当文本被选中时,剪贴板(出现剪切、复制、粘贴);在那种模式下,如果按下删除键,它应该删除所有。目前没有。
P.S不要告诉我特定的编辑文本,它是自定义键盘,它无法访问编辑文本。
我不明白为什么不会。在我创建的键盘中,我只是发出删除键事件,它就像一个魅力。在选择某些内容时按下 delete/backspace 键时尝试以下操作。
getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_DEL));
getCurrentInputConnection().sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP,KeyEvent.KEYCODE_DEL));
您还可以查看 InputConnection
是否有任何带有 getSelectedText
的选定文本。如果有则删除它(如果没有则删除前面的字符)。
CharSequence selectedText = inputConnection.getSelectedText(0);
if (TextUtils.isEmpty(selectedText)) {
inputConnection.deleteSurroundingText(1, 0);
} else {
inputConnection.commitText("", 1);
}