Java 我的应用程序崩溃,因为在inputfield中点击backspace,因为afterTextChanged,我如何处理此代码的backspace public void-afterextchanged(可编辑){ 字符串f=y.getText().toString(); 字符串[]数据2=f.split(“”); if(f.substring(f.length()-1).equals(“”){ StringBuilder M=新的StringBuilder(); 字符串z=y.getText().toString(); 字符串[]数据1=z.split(“”); { 字符串last=order(data1[data1.length-1].toString()); data1[data1.length-1]=last.toString(); 对于(int i=0;i0和&f.substring(f.length()-1).equals(“”){
这是我的afterchangetext的代码,当检测到空格时,它会将前一个单词更改为其标准形式,但当用户写入内容并尝试删除或点击backspace时,应用程序会因此方法而崩溃。请帮助我如何处理backspace当编辑文本因使用子字符串而为空时,它会崩溃空字符串上的方法Java 我的应用程序崩溃,因为在inputfield中点击backspace,因为afterTextChanged,我如何处理此代码的backspace public void-afterextchanged(可编辑){ 字符串f=y.getText().toString(); 字符串[]数据2=f.split(“”); if(f.substring(f.length()-1).equals(“”){ StringBuilder M=新的StringBuilder(); 字符串z=y.getText().toString(); 字符串[]数据1=z.split(“”); { 字符串last=order(data1[data1.length-1].toString()); data1[data1.length-1]=last.toString(); 对于(int i=0;i0和&f.substring(f.length()-1).equals(“”){,java,android,android-textwatcher,addtextchangedlistener,Java,Android,Android Textwatcher,Addtextchangedlistener,这是我的afterchangetext的代码,当检测到空格时,它会将前一个单词更改为其标准形式,但当用户写入内容并尝试删除或点击backspace时,应用程序会因此方法而崩溃。请帮助我如何处理backspace当编辑文本因使用子字符串而为空时,它会崩溃空字符串上的方法 if(f.substring(f.length()-1).equals(“”){ 这样替换: if(f.length()>0和&f.substring(f.length()-1).equals(“”){ 让我知道它是否有问题。发布
if(f.substring(f.length()-1).equals(“”){
这样替换:
if(f.length()>0和&f.substring(f.length()-1).equals(“”){
让我知道它是否有问题。发布崩溃日志…当edittext为空时它会崩溃吗?当我试图删除我输入的单词时不会,这意味着点击backspaceException发送完成信号。04-09 05:52:07.572 2917-2917/com.example.mian.translatorapp E/MessageQueue JNI:MessageQueue回调中的异常:HandlerReceiveCallback 04-09 05:52:07.588 2917-2917/com.example.mian.translatorapp E/MessageQueue JNI:java.lang.StringIndexOutOfBoundsException:length=0;index=-1@Rafsanahmad007在哪一行?……如果对您有效,请将答案标记为正确。这对其他人和我都有帮助。
public void afterTextChanged(Editable editable) {
String f = y.getText().toString();
String[] data2 = f.split(" ");
if (f.substring(f.length() - 1).equals(" ")) {
StringBuilder M = new StringBuilder();
String z = y.getText().toString();
String[] data1 = z.split(" ");
{
String last = order(data1[data1.length - 1].toString());
data1[data1.length - 1] = last.toString();
for (int i = 0; i < data1.length; i++) {
M.append(data1[i]);
M.append(" ");
}
y.removeTextChangedListener(this);
y.setText(M.toString());
y.setSelection(y.getText().length());
y.addTextChangedListener(this);
}
}
}