SpinnerView


Watch this on YouTube
activity_main.xml
1:  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
2: xmlns:tools="http://schemas.android.com/tools"
3: android:layout_width="match_parent"
4: android:layout_height="match_parent"
5: android:paddingBottom="@dimen/activity_vertical_margin"
6: android:paddingLeft="@dimen/activity_horizontal_margin"
7: android:paddingRight="@dimen/activity_horizontal_margin"
8: android:paddingTop="@dimen/activity_vertical_margin"
9: tools:context=".MainActivity" >
10: <TextView
11: android:id="@+id/textView1"
12: android:layout_width="wrap_content"
13: android:layout_height="wrap_content"
14: android:text="Select a district" />
15: <Spinner
16: android:id="@+id/sp"
17: android:layout_width="wrap_content"
18: android:layout_height="wrap_content"
19: android:layout_alignLeft="@+id/textView1"
20: android:layout_below="@+id/textView1"
21: android:layout_marginTop="22dp" />
22: </RelativeLayout>
Strings.xml
1:  <?xml version="1.0" encoding="utf-8"?>  
2: <resources>
3: <string name="app_name">SpinnerDemo</string>
4: <string name="action_settings">Settings</string>
5: <string name="hello_world">Hello world!</string>
6: <string-array name="districts_name">
7: <item>Alappy</item>
8: <item>Kollam</item>
9: <item>Kottayam</item>
10: <item>Cochin</item>
11: </string-array>
12: </resources>
MainActivity.java
1:  package com.spinnerdemo;  
2: import android.os.Bundle;
3: import android.app.Activity;
4: import android.view.Menu;
5: import android.view.View;
6: import android.widget.AdapterView;
7: import android.widget.AdapterView.OnItemSelectedListener;
8: import android.widget.ArrayAdapter;
9: import android.widget.Spinner;
10: import android.widget.Toast;
11: public class MainActivity extends Activity {
12: String[] districts;
13: Spinner sp;
14: @Override
15: protected void onCreate(Bundle savedInstanceState) {
16: super.onCreate(savedInstanceState);
17: setContentView(R.layout.activity_main);
18: sp = (Spinner) findViewById(R.id.sp);
19: districts = getResources().getStringArray(R.array.districts_name);
20: ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,districts);
21: sp.setAdapter(adapter);
22: sp.setOnItemSelectedListener(new OnItemSelectedListener() {
23: @Override
24: public void onItemSelected(AdapterView<?> arg0, View arg1,
25: int arg2, long arg3) {
26: // TODO Auto-generated method stub
27: int index = arg0.getSelectedItemPosition();
28: Toast.makeText(getBaseContext(), "You select "+districts[index], Toast.LENGTH_LONG).show();
29: }
30: @Override
31: public void onNothingSelected(AdapterView<?> arg0) {
32: // TODO Auto-generated method stub
33: }
34: });
35: }
36: @Override
37: public boolean onCreateOptionsMenu(Menu menu) {
38: // Inflate the menu; this adds items to the action bar if it is present.
39: getMenuInflater().inflate(R.menu.main, menu);
40: return true;
41: }
42: }