Android en el oyente de cambio de texto
Tengo una situación, donde hay dos campos.field1
yfield2
. Todo lo que quiero hacer es vaciarfield2
cuandofield1
Se cambia y viceversa. Así que al final solo un campo tiene contenido.
field1 = (EditText)findViewById(R.id.field1);
field2 = (EditText)findViewById(R.id.field2);
field1.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {}
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
}
public void onTextChanged(CharSequence s, int start,
int before, int count) {
field2.setText("");
}
});
field2.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {}
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
}
public void onTextChanged(CharSequence s, int start,
int before, int count) {
field1.setText("");
}
});
Funciona bien si adjuntoaddTextChangedListener
afield1
Solo, pero cuando lo hago para ambos campos, la aplicación falla. Obviamente porque intentan cambiarse mutuamente de forma indefinida. Una vezfield1
cambios se borrafield2
en este momentofield2
se cambia para que se borrefield1
y así...
¿Alguien puede sugerir alguna solución?