Ich habe einen Spinner laden Daten in SQLite
Ich habe Feld ID und Feldname in der Datenbank.
%Vor%und das Ergebnis ist
USA - & gt; Wert ist "USA"
Frankreich - & gt; Wert ist "Frankreich"
wenn ich den Code labels.add(cursor.getString(1));
in labels.add(cursor.getString(0));
und das Ergebnis ist
1 - & gt; Wert ist "1"
2 - & gt; Wert ist "2"
Ich versuche mit int position2 = spin2.getSelectedItemPosition()+1;
, aber der Wert ist ID / Position des Spinner, nicht die ID der Datenbank.
Wie man den Feldnamen auf dem Spinner anzeigt. aber der Wert ist ID des Namens
Beispiel: Die Drehfeldanzeige:
USA - & gt; Wert ist "1"
Frankreich - & gt; Wert ist "2"
BR
Alex
Es ist wirklich einfach, was Sie tun können, ist, das, was Sie von einer Klasse benötigen, auf die folgende Weise zu implementieren / darzustellen:
Erstellen Sie die folgende Klasse: SpinnerObject
%Vor%Wenn Sie diese Klasse verwenden, können Sie weiterhin die Android-Implementierung des ArrayAdapter verwenden (Sie müssen keine eigenen implementieren, da die toString -Methode den Zeichenfolgenwert bereitstellt, den Sie anzeigen möchten und den Sie weiterhin speichern die Datenbank-ID, die Sie auch benötigen).
Nun müssen Sie Ihre Liste wie folgt erstellen:
%Vor%Jetzt, da Sie die Liste der Objekte mit den Werten und den IDs haben, laden Sie den Spinner folgendermaßen:
%Vor%Und der Spinner zeigt die Werte an, während sie ihre IDs haben (aus der Datenbank).
Um die ID des aktuell ausgewählten Elements abzurufen, tun Sie Folgendes:
%Vor%Bitte versuchen Sie es und lassen Sie mich wissen, was passiert.
Tags und Links android android-spinner