2010-10-29 10 views
5

Necesito un EditText con un sufijo fijo. Estoy usando un TextWatcher para capturar el evento onTextChanged, pero si cambio el texto de nuevo agregando mi sufijo, se produce una excepción de stackoverflow causada por una recursión infinita.Android EditText con un sufijo fijo


msgtextview.addTextChangedListener(new TextWatcher() { 
     public void afterTextChanged(Editable s) { 

       //Doing some other stuff 

       msgtextview.setText("Changed Text") //This cause infinite recursion 

      }    
     } 

Aquí está el código.

+0

Publique su código para que alguien pueda ayudar, existen mil millones de formas de causar una recursión infinita, necesitamos ver lo que está haciendo. – blindstuff

Respuesta

1

Supongo que está teniendo un desbordamiento de pila porque cuando se agrega el sufijo por programación, desencadena un evento onTextChanged.

¿Ha pensado en establecer una bandera justo antes de configurarla programáticamente para que la próxima vez que la llame sepa que no agregue el sufijo?

La alternativa es agregar solo el sufijo después de que el usuario envíe su formulario.

+2

bueno, qué lástima, no pensé en eso y fue tan simple.Tnx (viniendo de qt4 me preguntaba si había algún tipo de setSuffix()) – Martino