当按住按钮时,如何按一个按钮逐个删除编辑文本的当前文本,并逐个删除文本。类似于退格按钮的功能。连续删除按钮上保留的EditText的内容Android
发送退格事件不适用于我的需要,因为它仅在键盘处于活动状态时才起作用。我没有使用任何键盘。
当按住按钮时,如何按一个按钮逐个删除编辑文本的当前文本,并逐个删除文本。类似于退格按钮的功能。连续删除按钮上保留的EditText的内容Android
发送退格事件不适用于我的需要,因为它仅在键盘处于活动状态时才起作用。我没有使用任何键盘。
您可以发送BACKSPACEKEY EVENT到您的EditText。
这里是你想要的样品Send backspace key event to edit text。
编辑
手动你可以像这样
从edittext
得到字符串。
删除最后一个索引处的字符。为此,您可以使用String
类的方法subString
。
递归执行此过程,直到您的字符串变为空。
你必须使用计时器this.It连续检查按钮状态按或不。像:
private Timer _timer;
final Button _button = (Button) findViewById(R.id.button1);
final EditText _editText = (EditText) findViewById(R.id.editText1);
_timer = new Timer();
TimerTask _task = new TimerTask() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
Editable _editable = _editText.getText();
int length = _editable.length();
_editText.setSelection(length);
if (_button.isPressed() && length > 0) {
_editable.delete(length - 1, length);
}
}
});
}
};
_timer.schedule(_task, 0, 60);
就取消计时器中的onDestroy()方法,像:
_timer.cancel();
这只能在我专注于编辑文本和键盘显示...我用这在一个自定义拨号应用程序。所以我创建了我自己的数字按钮,所以我不使用编辑文本的键盘 – jyce1492