Hinzufügen eines benutzerdefinierten Adapters zu einer AutoCompleteTextView

8

Gibt es eine einfache Möglichkeit, ein 2 TextView-Dropdown auf eine AutoCompleteTextView zu setzen.

Es gibt android.R.layout.two_line_list_item , für das ich keine Beispiele finden konnte.

Also habe ich Folgendes versucht:

%Vor%

Aber ich habe hier ein Problem:

%Vor%

Beim Einstellen des Adapters heißt es:

  

Gebundene Diskrepanz: Die generische Methode setAdapter (T) vom Typ   AutoCompleteTextView gilt nicht für die Argumente   (TwoLineDropdownAdapter). Der abgeleitete Typ TwoLineDropdownAdapter ist   kein gültiger Ersatz für den beschränkten Parameter

Wie löst man das?

Danke

    
user1537779 06.06.2013, 12:40
quelle

3 Antworten

7

Laut der Dokumentation ist der abgeleitete Typ von setAdapter in AutoCompleteTextView:

%Vor%

Ihr Adapter muss ein ListAdapter sein (welcher BaseAdapter ist, soweit so gut) und ein Filterable, welcher BaseAdapter nicht ist, ebenso wenig wie Ihre Adapterimplementierung. Ich würde einen ArrayAdapter erweitern, der filterbar ist, ganz zu schweigen von der Vereinfachung Ihrer Implementierung (einige Ihrer Methoden duplizieren Methoden von ArrayAdapter für das gleiche Ergebnis):

%Vor%     
njzk2 06.06.2013, 12:54
quelle
15

Hier Code funktioniert für mich,

Setzen Sie diesen Adapter auf autocompletetextview

%Vor%

ProductSearchAdapter-Klasse

%Vor%     
Dwivedi Ji 13.11.2013 10:49
quelle
0

Ich glaube, dass es am einfachsten ist, SimpleAdapter zu erweitern.

%Vor%

Der Hauptnachteil ist, dass dies Kandidaten auf Basis eines durch Leerzeichen getrennten Wortes entweder in Name oder in Beschreibung bringt. Wenn du deinem auto_complete_layout ein weiteres Feld hinzufügst, wird es auch in den Abgleich einbezogen.

Daher habe ich den SimpleAdapter neu geschrieben, um meinen Anforderungen besser gerecht zu werden. Dadurch wurde ein wesentlicher Teil des Basisklassenaufwands entfernt, der für meinen Anwendungsfall nicht relevant war. Aber die paar Zeilen oben geben Ihnen einen guten Start und bieten eine solide Referenz für die Anpassung von.

    
Alex Cohn 19.03.2015 09:30
quelle

Tags und Links