Ausgewähltes Element der Autocomplete-Textansicht Als einfache Textansicht anzeigen?

8

Ich verwende eine Autocomplete-Textansicht, die einige Namen aus der Datenbank anzeigt. Ich möchte einen Namen in einer Textansicht anzeigen, die ich aus Autocomplete-Textansicht ausgewählt habe. Hier ist mein Code:

%Vor% %Vor%     
bhoot4242 05.04.2013, 11:55
quelle

7 Antworten

8

Versuchen Sie es so:

%Vor%

Der ArrayAdapter verwendet die toString () - Methode von StudentInfo, um die angezeigten Texte zu generieren. Sie müssen also eine nice toString-Methode implementieren.

Auf diese Weise kann diese Art der Implementierung an jeden Objekttyp angepasst werden.

Btw .: Ich bevorzuge android.R.layout.simple_spinner_dropdown_item statt android.R.layout.simple_dropdown_item_1line

    
Stephan Richter 01.10.2015 13:30
quelle
3

Ihr s1 enthält alle Namen von database

%Vor%

hoffe, das wird dir helfen,

    
Amol Sawant 96 Kuli 05.04.2013 12:16
quelle
3

Vom Ansichtsobjekt arg1 wird der Wert der Zeichenfolge abgerufen. Von der ArrayList, die der AutoCompleteTextView übergeben wird, wird die Position des Elements mit dieser Zeichenfolge abgerufen.

in Ihrem Fall würde der Code etwa wie folgt aussehen.

int selectedPos = s1.indexOf ((Zeichenfolge) ((TextView) arg1) .getText ());

selectedPos ist die Position der Zeichenfolge in der angegebenen ArrayList.

    
Srikanth Reddy 29.04.2014 09:00
quelle
1

Um ein ausgewähltes Objekt aus der Autovervollständigen-Auswahl zu erhalten, das den benutzerdefinierten Datentyp verwendet und die Werte der zugehörigen Liste festlegt. Der folgende Code funktionierte für mich

%Vor%

Hinweis: Ich habe Standard-Parameternamen in onItemClick wie arg0-parent, arg1-view, arg2-position & amp; SomeDAO ist ein benutzerdefinierter Datentyp

    
priyanka_rao 23.06.2014 11:06
quelle
1

überschreiben toString Methode für Modellklasse (StudenInfo in diesem Fall) ist keine gute Idee!
Wenn Sie nur den Text des ausgewählten Elements abrufen möchten, verwenden Sie diesen Code:

%Vor%     
Ali Sherafat 14.07.2016 20:06
quelle
1

Dank an Stefan Richter! Ich möchte hinzufügen, dass es möglich ist, List<T> direkt zu verwenden, wenn Sie den Adapter erstellen:

%Vor%

Vergessen Sie auch nicht, die Methode toString() in StudentInfo.class :

zu überschreiben %Vor%     
Ivo Stoyanov 21.12.2017 11:27
quelle
0

Übergeordnete Position ist '0'

%Vor%     
Anish Manchappillil 08.07.2017 08:52
quelle