À l'aide d'une liste personnalisée de l'adaptateur avec le AutoCompleteTextView et conservant la fonctionnalité de l'auto de travail complet de la même

Donc, dire que j'utilise la suite de l'adaptateur pour AutoCompleteTextView:

public class RosterAdapter extends ArrayAdapter<Player> {
...

}

C'est à l'aide d'un objet appelé Lecteur, où en tant que par défaut AutoCompleteTextView fonctionne avec une Chaîne.

La liste s'affiche bien lorsque j'utilise la coutume, mais le seul problème que j'ai c'est quand je commence à taper quelque chose, il n'affiche pas les bonnes choses.

Par exemple, si je commence à taper bo, je m'attends personnes avec le nom Bob Henderson, Garry Bobrinski, etc..

Mais ce qui arrive est de la même liste, ce qui ne semble pas à la matière ce que j'type au hasard.

Puis-je pas utiliser un objet personnalisé pour que cela fonctionne? Dois-je utiliser une Corde pour qu'il corresponde à l'entrées correctement? Ou est-il d'une certaine manière je peux regarder une chaîne spécifique pour chacune des entrées?

* Mise à jour *

Y a plus de code, c'est comment j'ai réglé la coutume adaptateur RosterAdapter. Cela fonctionne, mais la saisie semi-automatique aspect de ce qui ne fonctionne pas correctement. C'est presque comme si ça devient confus et ne sait pas quoi chercher dans l'objet, de faire correspondre les caractères saisis.

AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_players);
            RosterAdapter adapter = new RosterAdapter(RosterActivity.this, R.layout.roster_row, players);
            textView.setAdapter(adapter);

C'est à l'aide d'un générique ArrayAdapter, et cela fonctionne bien pour la correspondance des entrées:

AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_players);
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(RosterActivity.this, R.layout.players_autocomplete, players);
            textView.setAdapter(adapter);

OriginalL'auteur xil3 | 2011-05-24