2012-03-21 82 views

回答

1

您必须使用文本观察器。 etMessage是一个EditText,看到这个代码:

etMessage.addTextChangedListener(new TextWatcher() { 

     @Override 
     public void onTextChanged(CharSequence s, int start, int before, 
       int count) { 

     } 

     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, 
       int after) { 

     } 

     @Override 
     public void afterTextChanged(Editable s) { 
      String myString = s.toString(); 
      Toast.makeText(getApplicationContext(), myString, 
        Toast.LENGTH_SHORT).show(); 
      if (myString.length() > 0) 
       if (myString.charAt(myString.length() - 1) == 'o') { 
        etMessage.setText("Hello"); 
       } 
     } 
    }); 
0

我不完全确定你的意思是这个问题,但我会尽力回答我最好的理解... 使用TextTextListener的EditText字段。 如:

mySlangMaker.addTextChangedListener(new CustomTextWatcher(mySlangMaker)); 

private class CustomTextWatcher implements TextWatcher { 

private EditText mEditText; 

public CustomTextWatcher(EditText mySlangMaker) { 
    mEditText = mySlangMaker; 
} 

public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
} 

public void onTextChanged(CharSequence s, int start, int before, int count) { 
} 

public void afterTextChanged(Editable s) { 
} 

}

这样的事情...添加你想要的逻辑在适当的方法.. :)

希望这是你在找什么..: )

+0

我的问题是:如何在输入时改变一些字符,如文本自动校正。我无法理解你的答案 – Fcoder 2012-03-21 15:20:29