Android Spinner


1.Static Spinner Creation in Android. 
2.Dynamic Spinner Creation in Android. 
3.Create More Spinner in More Ways. 
4.Transparent Spinner without using Alpha. 
5.Spinner with Previously Selected Value. 
6.Sort Spinner Items in Android. 
7.Run Time Add Item to Spinner. 
8.Spinners from EditText. 
9.Spinner Selection defines Item for Another Spinner. 

1.Static Spinner Creation in Android. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code: 

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
   xmlns:tools="http://schemas.android.com/tools"   
   android:layout_width="match_parent"   
   android:layout_height="match_parent" >   
   <TextView   
     android:id="@+id/textView1"   
     android:textSize="20dp"   
     android:textColor="#FF0000"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentTop="true"   
     android:layout_centerHorizontal="true"   
     android:layout_marginTop="60dp"   
     android:text="Static Spinner" />   
   <Spinner   
     android:id="@+id/spinner1"   
     android:entries="@array/spinner_item"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_centerHorizontal="true"   
     android:layout_marginTop="150dp" />   
 </RelativeLayout> 

Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.Toast;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.Spinner;   
 public class MainActivity extends Activity {   
 Spinner sp;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     sp = (Spinner) findViewById(R.id.spinner1);   
     sp.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 Toast.makeText(getBaseContext(), sp.getSelectedItem().toString(),   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }   
 } 

Step : Open res ->values ->strings.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <resources>   
   <string name="app_name">HemanthSomaraju</string>   
   <string name="action_settings">Settings</string>   
   <string name="hello_world">Hello world!</string>   
   <string-array name = "spinner_item">   
     <item>Hemanth</item>   
     <item>Somaraju</item>   
     <item>From</item>   
     <item>Kakinada</item>   
     <item>India</item>   
   </string-array>   
 </resources> 

Step : Open AndroidManifest.xml and add following code :

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>   

Step : Our output will be like this : 

 



2.Dynamic Spinner Creation in Android. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code: 

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
   xmlns:tools="http://schemas.android.com/tools"   
   android:id="@+id/rl"   
   android:layout_width="match_parent"   
   android:layout_height="match_parent" >   
   <TextView   
     android:id="@+id/textView1"   
     android:textSize="20dp"   
     android:textColor="#FF0000"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentTop="true"   
     android:layout_centerHorizontal="true"   
     android:layout_marginTop="60dp"   
     android:text="Dynamic Spinner" />   
 </RelativeLayout> 

Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.view.ViewGroup.LayoutParams;   
 import android.widget.AdapterView;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.ArrayAdapter;   
 import android.widget.RelativeLayout;   
 import android.widget.Spinner;   
 import android.widget.Toast;   
 public class MainActivity extends Activity {   
 RelativeLayout rl;   
 Spinner sp;   
 List<String> list;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     rl = (RelativeLayout) findViewById(R.id.rl);   
     sp = new Spinner (MainActivity.this);   
     list = new ArrayList<String> ();   
     list.add("Hemanth");   
     list.add("Somaraju");   
     list.add("From");   
     list.add("Kakinada");   
     list.add("India");   
     ArrayAdapter<String> adp = new ArrayAdapter<String>   
     (this,android.R.layout.simple_dropdown_item_1line, list);   
     sp.setAdapter(adp);   
     RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams   
      ((int) LayoutParams.WRAP_CONTENT, (int) LayoutParams.WRAP_CONTENT);   
     params.leftMargin = 170;   
     params.topMargin = 150;   
     sp.setLayoutParams(params);   
     rl.addView(sp);   
     sp.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 Toast.makeText(getBaseContext(), list.get(arg2).toString(),   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }   
 }  

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>  

Step : Our output will be like this : 

 



3.Create More Spinner in More Ways. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code: 

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
   xmlns:tools="http://schemas.android.com/tools"   
   android:layout_width="match_parent"   
   android:layout_height="match_parent" >   
   <Spinner   
     android:id="@+id/spinner1"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentLeft="true"   
     android:layout_alignParentTop="true"   
     android:layout_marginLeft="10dp"   
     android:layout_marginTop="40dp" />   
   <Spinner   
     android:id="@+id/spinner2"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentTop="true"   
     android:layout_marginTop="40dp"   
     android:layout_centerHorizontal="true" />   
   <Spinner   
     android:id="@+id/spinner3"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentRight="true"   
     android:layout_marginRight="10dp"   
     android:layout_alignParentTop="true"   
     android:layout_marginTop="40dp" />   
 </RelativeLayout> 

Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.ArrayAdapter;   
 import android.widget.Spinner;   
 import android.widget.Toast;   
 public class MainActivity extends Activity {   
 Spinner sp1, sp2, sp3;   
 List<String> list;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     sp1 = (Spinner) findViewById(R.id.spinner1);   
     sp2 = (Spinner) findViewById(R.id.spinner2);   
     sp3 = (Spinner) findViewById(R.id.spinner3);   
     list = new ArrayList<String> ();   
     list.add("Hemanth");   
     list.add("Somaraju");   
     list.add("From");   
     list.add("Kainada");   
     list.add("India");   
     final String[] str1={"Gudivada","Somaraju","Hemanth","Kakinada","India"};   
     ArrayAdapter<String> adp1 = new ArrayAdapter<String>   
     (this, android.R.layout.simple_dropdown_item_1line, list);   
     ArrayAdapter<String> adp2 = new ArrayAdapter<String>   
     (this, android.R.layout.simple_dropdown_item_1line, str1);   
     ArrayAdapter<CharSequence> adp3 = ArrayAdapter.createFromResource   
      (this, R.array.str2, android.R.layout.simple_dropdown_item_1line);   
     sp1.setAdapter(adp1);   
     sp2.setAdapter(adp2);   
     sp3.setAdapter(adp3);   
     sp1.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 Toast.makeText(getBaseContext(), list.get(arg2),   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
     sp2.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 Toast.makeText(getBaseContext(), str1[arg2],   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
     sp3.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 String item = sp3.getSelectedItem().toString();   
 Toast.makeText(getBaseContext(), item, Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }   
 }   

Step : Open res ->values ->strings.xml and add following code  : 

 <?xml version="1.0" encoding="utf-8"?>   
 <resources>   
   <string name="app_name">HemanthSomaraju</string>   
   <string name="action_settings">Settings</string>   
   <string name="hello_world">Hello world!</string>   
   <string-array name = "str2">   
     <item>Hemanth</item>   
     <item>Somaraju</item>   
     <item>From</item>   
     <item>Kakinada</item>   
     <item>India</item>   
   </string-array>   
 </resources>   

Step : Open AndroidManifest.xml and add following code :

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>

Step : Our output will be like this : 

 

 



4.Transparent Spinner without using Alpha. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
   xmlns:tools="http://schemas.android.com/tools"   
   android:id="@+id/rl"   
   android:layout_width="match_parent"   
   android:layout_height="match_parent" >   
   <Spinner   
     android:id="@+id/spinner1"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentTop="true"   
     android:layout_centerHorizontal="true"   
     android:layout_marginTop="76dp" />   
 </RelativeLayout> 

Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.ArrayAdapter;   
 import android.widget.RelativeLayout;   
 import android.widget.Spinner;   
 import android.widget.Toast;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 public class MainActivity extends Activity {   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     final List<String> list=new ArrayList<String>();   
     list.add("Hemanth");   
     list.add("Somaraju");   
     list.add("From");   
     list.add("Kakinada");   
     list.add("India");   
     Spinner sp1= (Spinner) findViewById(R.id.spinner1);   
     RelativeLayout rl=(RelativeLayout) findViewById(R.id.rl);   
     int clr= rl.getDrawingCacheBackgroundColor();   
     sp1.setBackgroundColor(clr);   
     ArrayAdapter<String> adp=new ArrayAdapter<String>(this,   
      android.R.layout.simple_list_item_1,list);   
     adp.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);   
     sp1.setAdapter(adp);   
     sp1.setOnItemSelectedListener(new OnItemSelectedListener()   
     {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int position, long id) {   
 // TODO Auto-generated method stub   
 Toast.makeText(getBaseContext(), list.get(position),   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }   
 } 

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>  

Step : Our output will be like this : 

 




5.Spinner with Previously Selected Value. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code:


 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    
   xmlns:tools="http://schemas.android.com/tools"    
   android:layout_width="match_parent"    
   android:layout_height="match_parent" >    
   <Spinner    
    android:id="@+id/spinner1"    
    android:layout_width="wrap_content"    
    android:layout_height="wrap_content"    
    android:layout_alignParentTop="true"    
    android:layout_centerHorizontal="true"    
    android:layout_marginTop="96dp" />    
  </RelativeLayout>    

Step : Open src -> package -> MainActivity.java and add following code :  

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.content.SharedPreferences;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.ArrayAdapter;   
 import android.widget.Spinner;   
 import android.widget.Toast;   
 public class MainActivity extends Activity {   
 private SharedPreferences prefs;   
 private String prefName = "spinner_value";   
 int id=0;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     final List<String> list=new ArrayList<String>();   
     list.add("Hemanth");   
     list.add("Somaraju");   
     list.add("From");   
     list.add("Kakinada");   
     list.add("India");   
     final Spinner sp=(Spinner) findViewById(R.id.spinner1);   
     ArrayAdapter<String> adp= new ArrayAdapter<String>(this,   
      android.R.layout.simple_list_item_1,list);   
     adp.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);   
     sp.setAdapter(adp);   
     prefs = getSharedPreferences(prefName, MODE_PRIVATE);   
     id=prefs.getInt("last_val",0);   
     sp.setSelection(id);   
     sp.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int pos, long arg3) {   
 // TODO Auto-generated method stub   
 prefs = getSharedPreferences(prefName, MODE_PRIVATE);   
 SharedPreferences.Editor editor = prefs.edit();   
 //---save the values in the EditText view to preferences---   
  editor.putInt("last_val", pos);   
 //---saves the values---   
  editor.commit();   
 Toast.makeText(getBaseContext(), sp.getSelectedItem().toString(),   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }    
 } 

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>   

Step : Our output will be like this : 

 


Step : Close and Re-Execute the Application. Our Spinner output will be like this : 




6.Sort Spinner Items in Android. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code:


  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    
   xmlns:tools="http://schemas.android.com/tools"    
   android:layout_width="match_parent"    
   android:layout_height="match_parent" >    
   <Spinner    
    android:id="@+id/spinner1"    
    android:layout_width="wrap_content"    
    android:layout_height="wrap_content"    
    android:layout_alignParentTop="true"    
    android:layout_centerHorizontal="true"    
    android:layout_marginTop="86dp" />    
  </RelativeLayout>    

Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.Collections;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.ArrayAdapter;   
 import android.widget.Spinner;   
 public class MainActivity extends Activity {   
 int position=0;   
 String val=null;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     final Spinner sp=(Spinner) findViewById(R.id.spinner1);   
     final List<String> list=new ArrayList<String> ();   
     list.add("H1");   
     list.add("E2");   
     list.add("M3");   
     list.add("A4");   
     list.add("N5");   
     list.add("T6");   
     list.add("H7");   
     list.add("K8");   
     list.add("K9");   
     list.add("D10");   
     // Sort List Items   
     Collections.sort(list);   
     final ArrayAdapter<String> adp= new ArrayAdapter<String>(this,   
 android.R.layout.simple_list_item_1,list);   
 adp.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);   
 sp.setAdapter(adp);   
 sp.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int pos, long arg3) {   
 // TODO Auto-generated method stub   
 position=pos;   
 val=sp.getSelectedItem().toString();   
 // You can insert your code...   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }    
 }   

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>   

Step : Our output will be like this : 



7.Run Time Add Item to Spinner. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code:


 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    
   xmlns:tools="http://schemas.android.com/tools"    
   android:layout_width="match_parent"    
   android:layout_height="match_parent" >    
   <EditText    
    android:id="@+id/editText1"    
    android:layout_width="wrap_content"    
    android:layout_height="wrap_content"    
    android:layout_alignParentTop="true"    
    android:layout_centerHorizontal="true"    
    android:layout_marginTop="30dp"    
    android:hint="Enter your Item"    
    android:ems="10" />    
   <Button    
    android:id="@+id/button1"    
    android:layout_width="wrap_content"    
    android:layout_height="wrap_content"    
    android:layout_centerHorizontal="true"    
    android:layout_marginTop="90dp"    
    android:text="Add" />    
   <Spinner    
    android:id="@+id/spinner1"    
    android:layout_width="wrap_content"    
    android:layout_height="wrap_content"    
    android:layout_centerHorizontal="true"    
    android:layout_marginTop="150dp" />    
  </RelativeLayout>    

Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.ArrayAdapter;   
 import android.widget.Button;   
 import android.widget.EditText;   
 import android.widget.Spinner;   
 public class MainActivity extends Activity {   
 Spinner sp;   
 EditText et;   
 List<String> li;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     li=new ArrayList<String>();   
     li.add("Hemanth");   
     li.add("Somaraju");   
     li.add("Kakinada");   
     sp=(Spinner) findViewById(R.id.spinner1);   
     Button b=(Button) findViewById(R.id.button1);   
     et=(EditText)findViewById(R.id.editText1);   
     add();   
     b.setOnClickListener(new View.OnClickListener() {   
 public void onClick(View v) {   
 // TODO Auto-generated method stub   
 li.add(et.getText().toString());   
 et.setText(null);   
 add();   
 }   
 });   
   }   
   private void add() {   
 // TODO Auto-generated method stub   
 ArrayAdapter<String> adp=new ArrayAdapter<String>(this,   
 android.R.layout.simple_dropdown_item_1line,li);   
 sp.setAdapter(adp);   
 }   
 @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }    
 }   

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>   


Step : Our output will be like this : 




8.Spinners from EditText. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
   xmlns:tools="http://schemas.android.com/tools"   
   android:layout_width="match_parent"   
   android:layout_height="match_parent" >   
   <EditText   
     android:id="@+id/editText1"   
     android:hint="Enter Items"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentTop="true"   
     android:layout_centerHorizontal="true"   
     android:layout_marginTop="15dp"   
     android:ems="10" >   
     <requestFocus />   
   </EditText>   
   <Button   
     android:id="@+id/button1"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_below="@+id/editText1"   
     android:layout_centerHorizontal="true"   
     android:layout_marginTop="18dp"   
     android:text="Proceed" />   
   <Spinner   
     android:id="@+id/spinner1"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_below="@+id/button1"   
     android:layout_alignParentLeft="true"   
     android:layout_marginLeft="10dp"   
     android:layout_marginTop="40dp"/>   
   <Spinner   
     android:id="@+id/spinner2"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_below="@+id/button1"   
     android:layout_alignParentRight="true"   
     android:layout_marginRight="10dp"   
     android:layout_marginTop="40dp"/>   
 </RelativeLayout>   


Step : Open src -> package -> MainActivity.java and add following code : 

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.ArrayAdapter;   
 import android.widget.Button;   
 import android.widget.EditText;   
 import android.widget.Spinner;   
 public class MainActivity extends Activity {   
 List<String> li;   
 Spinner sp1,sp2;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     li=new ArrayList<String>();   
     li.add("Hemanth");   
     li.add("Somaraju");   
     sp1=(Spinner) findViewById(R.id.spinner1);   
     sp2=(Spinner) findViewById(R.id.spinner2);   
     Button b=(Button) findViewById(R.id.button1);   
     final EditText et=(EditText) findViewById(R.id.editText1);   
     call();   
     b.setOnClickListener(new View.OnClickListener() {   
 public void onClick(View v) {   
 // TODO Auto-generated method stub   
 li.add(et.getText().toString());   
 et.setText(null);   
 call();   
 }   
 });   
   }   
   public void call() {   
 // TODO Auto-generated method stub   
    ArrayAdapter<String> adp=new ArrayAdapter<String>(this,   
    android.R.layout.simple_dropdown_item_1line,li);   
    sp1.setAdapter(adp);   
    sp2.setAdapter(adp);   
    sp1.setSelection((li.size()-1));   
    sp1.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 sp2.setSelection(arg2);   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }    
 }   

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>  

Step : Our output will be like this : 

 


9.Spinner Selection defines Item for Another Spinner. 

Step : Select File -> New -> Project -> Android Application Project (or) Android Project. Fill the forms and click "Finish" button. If you have any doubt regarding create a new project Click Here. 

Step : Open res -> layout -> activity_main.xml (or) main.xml and add following code:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"   
   xmlns:tools="http://schemas.android.com/tools"   
   android:layout_width="match_parent"   
   android:layout_height="match_parent" >   
   <Spinner   
     android:id="@+id/spinner1"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentLeft="true"   
     android:layout_alignParentTop="true"   
     android:layout_marginLeft="15dp"   
     android:layout_marginTop="50dp" />   
   <Spinner   
     android:id="@+id/spinner2"   
     android:layout_width="wrap_content"   
     android:layout_height="wrap_content"   
     android:layout_alignParentRight="true"   
     android:layout_alignParentTop="true"   
     android:layout_marginRight="15dp"   
     android:layout_marginTop="50dp" />   
 </RelativeLayout>   

Step : Open src -> package -> MainActivity.java and add following code :  

 package com.gudivada.hemanthsomaraju;   
 import java.util.ArrayList;   
 import java.util.List;   
 import android.os.Bundle;   
 import android.app.Activity;   
 import android.view.Menu;   
 import android.view.View;   
 import android.widget.AdapterView;   
 import android.widget.AdapterView.OnItemSelectedListener;   
 import android.widget.ArrayAdapter;   
 import android.widget.Spinner;   
 import android.widget.Toast;   
 public class MainActivity extends Activity {   
 Spinner sp1,sp2;   
 ArrayAdapter<String> adp1,adp2;   
 List<String> l1,l2;   
 int pos;   
   @Override   
   public void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);   
     setContentView(R.layout.activity_main);   
     l1=new ArrayList<String>();   
     l1.add("H");   
     l1.add("S");   
     sp1= (Spinner) findViewById(R.id.spinner1);   
     sp2= (Spinner) findViewById(R.id.spinner2);   
     adp1=new ArrayAdapter<String> (this,android.R.layout.simple_dropdown_item_1line,l1);   
     adp1.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);   
     sp1.setAdapter(adp1);   
     sp1.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
 pos = arg2;   
 add();   
 }   
 private void add() {   
 // TODO Auto-generated method stub   
     switch(pos)   
     {   
     case 0:   
      l2= new ArrayList<String>();        
      l2.add("Hemanth 1");   
      l2.add("Hemanth 2");   
      adp2=new ArrayAdapter<String>(MainActivity.this,   
      android.R.layout.simple_dropdown_item_1line,l2);   
      sp2.setAdapter(adp2);   
      select();   
      break;   
     case 1:   
      l2= new ArrayList<String>();        
      l2.add("Somaraju 1");   
      l2.add("Somaraju 2");   
      adp2=new ArrayAdapter<String>(MainActivity.this,   
      android.R.layout.simple_dropdown_item_1line,l2);   
      sp2.setAdapter(adp2);   
      select();   
      break;   
     }   
 }   
 private void select() {   
 // TODO Auto-generated method stub   
 sp2.setOnItemSelectedListener(new OnItemSelectedListener() {   
 public void onItemSelected(AdapterView<?> arg0, View arg1,   
 int arg2, long arg3) {   
 // TODO Auto-generated method stub   
     Toast.makeText(getBaseContext(), l2.get(arg2),   
 Toast.LENGTH_SHORT).show();   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });   
 }   
 public void onNothingSelected(AdapterView<?> arg0) {   
 // TODO Auto-generated method stub   
 }   
 });      
   }   
   @Override   
   public boolean onCreateOptionsMenu(Menu menu) {   
     getMenuInflater().inflate(R.menu.main, menu);   
     return true;   
   }    
 }   

Step : Open AndroidManifest.xml and add following code : 

 <?xml version="1.0" encoding="utf-8"?>   
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"   
   package="com.gudivada.hemanthsomaraju"   
   android:versionCode="1"   
   android:versionName="1.0" >   
   <uses-sdk   
     android:minSdkVersion="8"   
     android:targetSdkVersion="19" />   
   <application   
     android:allowBackup="true"   
     android:icon="@drawable/ic_launcher"   
     android:label="@string/app_name"   
     android:theme="@style/AppTheme" >   
     <activity   
       android:name="com.gudivada.hemanthsomaraju.MainActivity"   
       android:label="@string/app_name" >   
       <intent-filter>   
         <action android:name="android.intent.action.MAIN" />   
         <category android:name="android.intent.category.LAUNCHER" />   
       </intent-filter>   
     </activity>   
   </application>   
 </manifest>   

Step : Our output will be like this :