使用下面的代码我将替换所有字符(如果我的edittext包含四个a,这里都删除了所有字符),其中包含子字符串,并且光标位置在edittext字段中的第一个字符之前。
//getting cursor position
int end = t1.getSelectionEnd();
//getting the selected Text
String selectedStr = t1.getText().toString().substring(end-1, end);
//replacing the selected text with empty String and setting it to EditText
t1.setText(t1.getText().toString().replace(selectedStr, ""));
如何在不改变光标位置的情况下清除光标位置前的单个字符(如果我的光标位于edittext的中间)。
答案 0 :(得分:3)
我认为它迟到但仍然。
您可以使用SpannableStringBuilder。
//getting cursor position
int end = t1.getSelectionEnd();
//getting the selected Text
SpannableStringBuilder selectedStr=new SpannableStringBuilder(t1.getText());
//replacing the selected text with empty String and setting it to EditText
selectedStr.replace(end-1, end, "");
edittext1.setText(selectedStr);
答案 1 :(得分:1)
我用这个函数解决了:
int pos = editText.getSelectionStart();
if (pos > 0)
String text = editText.getText().delete(pos - 1, pos).toString();
答案 2 :(得分:0)
完美的解决方案试试这个...... 无论您将光标置于何处,该值都将从该位置移除
with open('test_pic.jpg', 'a') as fin:
fin.write(str(data_pic))
fin.close()