2012-05-22 32 views
6


Tengo un cuadro Editar texto donde el usuario puede ingresar la entrada. Necesito mostrar el texto de entrada en un TextView (que se coloca debajo del Edittext) mientras el usuario ingresa el texto.
Por ejemplo: si el usuario ingresa caracteres en el cuadro Editar texto, necesito mostrar los mismos caracteres en TextView. Del mismo modo, si el usuario elimina cualquier carácter de editetext, necesito eliminar el mismo carácter de TextView. (Por último, quiero cambiar el texto de textview en el cambio del texto de editext). Espero que mi requerimiento esté claro ahora. Cómo puedo conseguir esto ? Guíeme¿Cómo cambiar el texto de TextView en el cambio del texto de EditText?

+0

Tome un vistazo a esto: http://www.andreabaccega.com/blog/2010/10/09/onchange- event-on-edittext-in-android / – Urho

Respuesta

21

Agregue TextWatcher a su Edittext. en afterTextChanged() haga su operación. 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); 
4

Debe sobrescribir este método:

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()) 
     } 
    } 
}); 
5
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()); 

       } 
      } 
     }); 
    } 
Cuestiones relacionadas