Ich habe 5 Spinner. Um es zusammenfassend zu machen.
Dies ist Spinner in XML
<Spinner
android:id="@+id/text_interested"
android:layout_span="2"
android:layout_width="wrap_content"
android:layout_height="60px"
android:entries="@array/interestedarrays"
android:prompt="@string/interestedprompt" />
Dies ist Spinner in Java
submitbtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
interested.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(
AdapterView<?> adapterView, View view,
int i, long l) {
interesting = interested.getItemAtPosition(i).toString();
}
public void onNothingSelected(
AdapterView<?> adapterView) {
}
});
}
});
Erklärung hier:
Die Seite hat einen Button. Diese Schaltfläche liest die Daten vom Drehknopf, wenn sie gedrückt wird. Ich habe die Ausgabe damit überprüft
System.out.println(interested.getItemAtPosition(i).toString());
Es gab mir nichts, nicht einmal null.
Wie kann man den Wert abrufen und als Zeichenfolge verwenden?
android
android-spinner
Alan Lai
quelle
quelle
Antworten:
Versuche dies:
String text = mySpinner.getSelectedItem().toString();
Auf diese Weise können Sie Wert für verschiedene Spinner erhalten.
quelle
String Text = mySpinner.getSelectedItem().toString();
ODER
mySpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Object item = parent.getItemAtPosition(position); } public void onNothingSelected(AdapterView<?> parent) { } });
quelle
Sie können den ausgewählten Gegenstand von Spinner erhalten, indem Sie:
interested.getSelectedItem().toString();
quelle
Versuche dies
final Spinner cardStatusSpinner1 = (Spinner) findViewById(R.id.text_interested); String cardStatusString; cardStatusSpinner1.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { cardStatusString = parent.getItemAtPosition(pos).toString(); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); final Button saveBtn = (Button) findViewById(R.id.save_button); saveBtn .setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub System.out.println("Selected cardStatusString : " + cardStatusString ); //this will print the result } });
quelle
Wenn Ihr Spinner mit einem SQLite-Cursor gefüllt wurde, lautet die Lösung:
Spinner mySpin = (Spinner) findViewById(R.id.myspin); mySpin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { SQLiteCursor item = (SQLiteCursor) parent.getItemAtPosition(position); String value = String.valueOf(item.getString(0)); Toast.makeText(getApplicationContext(), "The option is:" + value , Toast.LENGTH_SHORT).show(); }
PS: In
item.getString(0)
-> 0 ist der Index der Spalte am Cursor, die Sie erhalten möchten.quelle
Zusätzlich zu den vorgeschlagenen,
String Text = mySpinner.getSelectedItem().toString();
Du kannst tun,
String Text = String.valueOf(mySpinner.getSelectedItem());
quelle
Holen Sie sich den ausgewählten Artikel mit Kotlin:
spinner.selectedItem.toString()
quelle
Wenn Sie einen Wert aus dem Spinner auswählen, erhalten Sie den ausgewählten Wert.
interested.getSelectedItem().toString();
quelle
Ich denke, Sie möchten das ausgewählte Element des Spinners, wenn Sie auf die Schaltfläche klicken.
Versuchen Sie getSelectedItem () :
spinner.getSelectedItem()
quelle
Der beste Weg, dies zu tun, ist: -
String selectedItem = spinner.getSelectedItem().toString();
Sie können die Dokumente hier beziehen: Spinner
quelle
Versuche dies
sp1 = String.valueOf(spinner.getSelectedItem());
quelle
Da ist die neueste Sprache für die Android-Entwicklung Kotlin. Hier erfahren Sie, wie wir dies in Kotlin mithilfe eines anonymen Objekts tun.
spinnerName?.onItemSelectedListener = object : AdapterView.OnItemSelectedListener{ override fun onNothingSelected(parent: AdapterView<*>?) { println("Nothing Selected") } override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) { val selectedString = yourList[position] } }
quelle
Durch die Implementierung des SpinnerAdapter für Ihr Adapterobjekt verwende ich
interested.getItem(i).toString()
quelle
spinnerType = (AppCompatSpinner) findViewById(R.id.account_type); spinnerType.setPrompt("Select Type"); spinnerType.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { TypeItem clickedItem = (TypeItem) parent.getItemAtPosition(position); String TypeName = clickedItem.getTypeName(); Toast.makeText(AddAccount.this, TypeName + " selected", Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { } });
quelle