I am using spinner in my android application like below
spino = dialog.findViewById(R.id.language_spinner);
if (spino != null) {
spino.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String item_position = String.valueOf(position);
int itemposition = Integer.parseInt(item_position);
String selected = spino.getSelectedView().toString();
Log.e("selected position",""+itemposition);
Log.e("selected Text",selected);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
else{
Log.e("Selected item :","NULL:");
}
And xml
layout is like below
<Spinner
android:id="@+id/language_spinner"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:fontFamily="@font/popins_reguler"
android:entries="@array/languages"
android:layout_marginBottom="8dp"
android:layout_marginEnd="8dp"
android:theme="@style/Spinner"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp">
Getting position of selected is working fine however I am getting text of selected position is like below
androidx.appcompat.widget.AppCompatTextView{dc81ebe V.ED..... ........ 0,35-986,111 #1020014 android:id/text1}
Can anyone please help me for get the text of selected position of spinner?
Thanks!
To get the text of selected item use spinner.getAdapter().getItem(position)
spino = dialog.findViewById(R.id.language_spinner);
if (spino != null) {
spino.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String item_position = String.valueOf(position);
int itemposition = Integer.parseInt(item_position);
String selected = String.valueOf(spino.getAdapter().getItem(position));
Log.e("selected position",""+itemposition);
Log.e("selected Text",selected);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
else{
Log.e("Selected item :","NULL:");
}