I have a EditText box where the user can enter input. I need to display the input text in a TextView (which is placed below the Edittext) while the user inputting the text.
For Ex: If the user is entering any characters in Edittext box, i need to display the same characters in TextView. In the same way, If the user deletes any character from editetext, i need to remove the same character from TextView. (Ultimtely, I want to change textview's text on change of editext's text). I hope my requirement is clear now. How can i achieve this ? Please guide me
Add TextWatcher to your Edittext. in afterTextChanged() do your operation.
http://developer.android.com/reference/android/text/TextWatcher.html
TextWatcher inputTextWatcher = new TextWatcher() {
public void afterTextChanged(Editable s) {
textview.setText(s.toString());
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
};
editText.addTextChangedListener(inputTextWatcher);
edtText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
if (!edtText.getText().toString().equalsIgnoreCase("")){
// here textview.setText(edtText.getText());
}
}
});
}
You should overwrite this method :
editText.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) {
if(editText.getText().length() >= 0) {
textView.setText(editText.getText().toString())
}
}
});
来源:https://stackoverflow.com/questions/10699202/how-to-change-textviews-text-on-change-of-edittexts-text