Heim > Java > javaLernprogramm > Hauptteil

Wie kann man das ausgewählte Element in einem Android-Spinner programmgesteuert nach Wert festlegen?

Susan Sarandon
Freigeben: 2024-10-31 17:30:02
Original
883 Leute haben es durchsucht

How to Programmatically Set the Selected Item in an Android Spinner by Value?

Ausgewähltes Element des Spinners nach Wert festlegen

Beim Aktualisieren einer Ansicht müssen Sie möglicherweise einen in der Datenbank gespeicherten Wert vorab auswählen ein Spinner. Zunächst könnten Sie eine Lösung versuchen wie:

void setSpinner(String value)
{
    int pos = getSpinnerField().getAdapter().indexOf(value);
    getSpinnerField().setSelection(pos);
}
Nach dem Login kopieren

Dieser Ansatz stößt jedoch auf ein Hindernis, da die Adapterschnittstelle keine indexOf-Methode bereitstellt.

Lösung

Um die Position eines bestimmten Werts in Ihrem Spinner zu finden und zu vergleichen, befolgen Sie diese Schritte:

  1. Definieren Sie einen Vergleichswert, zum Beispiel: String CompareValue = "some value".
  2. Erstellen Sie einen ArrayAdapter mit der erforderlichen Ressource:

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);
    Nach dem Login kopieren
  3. Legen Sie den ArrayAdapter als Adapter für Ihren Spinner fest:

    mSpinner.setAdapter(adapter);
    Nach dem Login kopieren
  4. Verwenden Sie die getPosition-Methode, um die Position Ihres Vergleichswerts innerhalb des ArrayAdapters zu bestimmen:

    if (compareValue != null) {
     int spinnerPosition = adapter.getPosition(compareValue);
     mSpinner.setSelection(spinnerPosition);
    }
    Nach dem Login kopieren

    Indem Sie diese Schritte befolgen, können Sie einen Wert in einem Spinner effektiv auf der Grundlage seines Werts vorab auswählen als seine Position in der Liste.

Das obige ist der detaillierte Inhalt vonWie kann man das ausgewählte Element in einem Android-Spinner programmgesteuert nach Wert festlegen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage