J'ai donc essayé d'implémenter TextWatcher pour Android et j'ai rencontré quelques problèmes avec le TextChangedListener appelé plusieurs fois ou dans une boucle infinie car je veux convertir le texte dans le EditText widget dans une chaîne au format monétaire.Supprimer TextChangedListener puis l'ajouter à nouveau
Ce que je l'ai fait travailler autour de cela était de créer ma propre TextWatcher personnalisé, puis en cas afterTextChanged a fait quelque chose comme le
suivantpublic class CurrencyTextWatcher implements TextWatcher {
private EditText et;
public CurrencyTextWatcher(EditText editText) {
et = editText;
}
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) {
et.removeTextChangedListener(this);
et.setText(myCurrencyString);
et.addTextChangedListener(this);
}
}
Ma question est, est-il une meilleure façon de le faire? Je veux avoir le Widget EditText pour contenir où les modifications vont et la chaîne formatée qui en résulte.
Existe-t-il d'autres problèmes liés à la suppression et à l'ajout d'un objet TextChangedListener comme celui-ci?
Merci à l'avance
Ah, parfait .. ne peut pas croire que je ne pensais pas à cela. Je vous remercie – Jason