sql >> Base de Datos >  >> RDS >> Mysql

AutocompletarTextView con datos MySQL

Simplemente necesita algún mecanismo que "vigile" los cambios en su cuadro de entrada y la forma más correcta de cómo lograrlo se menciona TextWatcher

Así que impleméntelo y en algún método que proporcione TextWatcher por ejemplo onTextChanged() , asigne datos desde el cuadro de entrada y envíelos como parámetro a AsyncTask y en onPostExecute() crea un nuevo adaptador para tu AutoCompleteTextView con datos recuperados de MySQL y asigna Adaptador a tu widget y lo tienes.

Pseudocódigo:

public void onTextChanged(CharSequence s, int start, int before, int count) {
   if (s.length() > 1) {
      insertString = s.toString();
      new YourTask().execute(insertString);                  
   }
}

y en su AsyncTask, realice algo como esto:

protected List<String> doInBackground() {
   // fetchning data from MySQL
   return list;
}

public void onPostExecute(List<String> result) {
   if (!result.isEmpty()) {
       SomeAdapter adp = new SomeAdapter(context, layout, result);
       actv.setAdapter(adp);
   }
}

Nota: En su caso, es más fácil hacer su AsyncTask clase interna de su Activity class y tienes acceso directo a UI componentes sin pasarlos a través del constructor.