Ausgewähltes Spinner-Element nach Wert festlegen: Eine umfassende Anleitung
Beim Arbeiten mit dem Spinner-Widget von Android kann es erforderlich sein, ein Element basierend auf dem Spinner vorab auszuwählen auf seinem Wert und nicht auf seiner Position innerhalb der Liste. Um dies zu erreichen, können die folgenden Schritte unternommen werden:
Schritt 1: Erstellen und Initialisieren des Spinners mit einem ArrayAdapter
<code class="java">Spinner mSpinner = (Spinner) findViewById(R.id.my_spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.my_array, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mSpinner.setAdapter(adapter);</code>
Schritt 2: Abrufen der Wert, der vorgewählt werden soll
Angenommen, der gewünschte Wert ist in einer Variablen namens preselectedValue gespeichert, rufen Sie ihn wie folgt ab:
<code class="java">String preselectedValue = /* Fetch the stored value here */;</code>
Schritt 3: Suchen Sie nach der Position des vorgewählten Werts
Die Position des vorgewählten Werts im Spinner-Adapter kann mit der getPosition()-Methode des ArrayAdapter ermittelt werden:
<code class="java">int position = adapter.getPosition(preselectedValue);</code>
Schritt 4 : Legen Sie die Auswahl des Spinners fest
Sobald die Position des vorgewählten Werts bekannt ist, legen Sie das ausgewählte Element des Spinners mit der Methode setSelection() fest:
<code class="java">mSpinner.setSelection(position);</code>
Hier ist ein vollständiger Code Snippet zur Veranschaulichung des gesamten Prozesses:
<code class="java">String preselectedValue = /* Fetch the stored value here */; Spinner mSpinner = (Spinner) findViewById(R.id.my_spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.my_array, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mSpinner.setAdapter(adapter); if (preselectedValue != null) { int position = adapter.getPosition(preselectedValue); mSpinner.setSelection(position); }</code>
Indem Sie diese Schritte befolgen, können Sie ganz einfach einen Wert in einem Spinner vorab auswählen, indem Sie nach seiner Position im zugrunde liegenden Adapter suchen.
Das obige ist der detaillierte Inhalt vonWie wähle ich einen Wert in einem Android-Spinner anhand seines Werts aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!