Spinner | Android Studio | Kotlin
Spinner Example | Android Studio | Kotlin
In this tutorial, we will learn how to use Spinner.Android spinner is like the drop-down menu with multiple values from which the end-user can select only one value. Android spinner is associated with AdapterView. So you need to use one of the adapter classes with spinner.
We will select an item from the Spinner and set it to the TextView.
>>Watch For Java
Step 1: Create a new Project or open a new project
Step 2: Code
activity_main.xml<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp" tools:context=".MainActivity"> <Spinner android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="wrap_content"/> <TextView android:id="@+id/outputSpinnerTv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="Hello World!" android:textColor="#000" android:textSize="30sp" /> </RelativeLayout>
MainActivity.kt
package com.blogspot.atifsoftwares.myapplication import android.os.Bundle import android.view.View import android.widget.AdapterView import android.widget.AdapterView.OnItemSelectedListener import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { //options to be displayed in spinner var mOptions = arrayOf("Canada", "Pakistan", "Turkey", "US") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //Creating the ArrayAdapter instance having the list of options val aa: ArrayAdapter<String> = ArrayAdapter(this, android.R.layout.simple_spinner_item, mOptions) aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) //setting the ArrayAdapter data on the Spinner spinner!!.adapter = aa //spinner item click handler spinner!!.onItemSelectedListener = object : OnItemSelectedListener { override fun onItemSelected( parent: AdapterView<*>?, view: View?, position: Int, id: Long ) { //METHOD 1: Get text from selected item's position & set it to TextView //mOutputSpinnerTv.setText(parent.getItemAtPosition(position).toString()); //METHOD 2: Get the position of item selected, & perform specific task if (position == 0) { outputSpinnerTv!!.text = "Canada is selected..." } if (position == 1) { outputSpinnerTv!!.text = "Pakistan is selected..." } if (position == 2) { outputSpinnerTv!!.text = "Turkey is selected..." } if (position == 3) { outputSpinnerTv!!.text = "US is selected..." } } override fun onNothingSelected(parent: AdapterView<*>?) {} } } }
Step 3: Run Project
Output
Comments
Post a Comment