AutocompleteTextView dinámico con ArrayAdapter y TextWatcher

Estoy tratando de actualizar la lista de un AutocompleteTextView dinámicamente utilizando y ArrayAdapter. Para actualizar esta vista, utilizo un TextWatcher para supervisar cualquier cambio que pueda ocurrir en AutocompleteTextView.

El problema es que la lista no está actualizando en absoluto y no puedo entender por qué. He estado buscando algo así en Internet y he encontrado un par de enfoques diferentes, pero todavía no puedo entender por qué este, que debería ser el más simple, no está funcionando. Cualquier explicación sería muy apreciada.

Target AVD: nivel de API de Google 10, Android 2.3.3

Aquí está el código simplificado:

public class AutocompleteActivity extends Activity implements TextWatcher { ArrayAdapter<String> adapter = null; AutoCompleteTextView acTextView = null; ArrayList<String> addresses = new ArrayList<String>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.autocompleteview); acTextView = (AutoCompleteTextView) findViewById(R.id.autocomplete_address); adapter = new ArrayAdapter<String>(this, R.layout.listitem, addresses); adapter.setNotifyOnChange(true); acTextView.addTextChangedListener(this); acTextView.setAdapter(adapter); } @Override public void onTextChanged(CharSequence text, int start, int before, int after) { try { adapter.add("test"); } catch (Exception e) { e.printStackTrace(); } } 

En su código fuente, TextWatcher se suministra a AutoCompleteTextView, este es el problema real.

Si observa el código fuente AutoCompleteTextView, encontrará AutoCompleteTextView tiene su propio TextWatcher, denominado "MyWatcher". A causa de esto, AutoCompleteTextView no puede responder a su acción de escritura.

  • Android TextWatcher.afterTextChanged vs TextWatcher.onTextChanged
  • ¿Cómo elimino texto en EditText con TextWatcher? Cada vez que detecta una cadena y formatea su
  • Cambiar el color del texto cuando el usuario marca las etiquetas hash
  • Android edittext onchange escucha
  • Los eventos de TextWatcher se disparan varias veces
  • Clase interna dentro de una interfaz que implementa la misma interfaz, ¿qué estamos logrando con esto?
  • Textwatcher no funciona en KitKat para el número como inputType
  • Cómo manejar la tecla Intro usando TextWatcher en Android
  • Android - Hacer algo * después de * texto se cambia en EditText
  • Reemplazar el carácter dentro de TextWatcher en android
  • TextWatcher.afterTextChanged tiene cadena incorrecta después de retroceso
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.