Saturday, December 14, 2013

Spinner example with city names: Android tutorial

Program description:

This is a spinner example program which displays list of cities in it. By default it displays first city.


Spinner : Spinner is an adapter view, which displays vertically scrollable list of items displaying only one at a time in collapsed mode. When user clicks on spinner, it displays all items in expanded mode, on clicking any of the item spinner is collapsed and displays selected item.


Steps for this program:

1. Insert all cities into an array list of strings.
2. Prepare array adapter which takes elements from array list.
3. Establish communication between adapter and spinner, to allow array adapter to push elements into spinner.

First activity 


package com.techpalle.b15_spinner;

import java.util.ArrayList;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

public class MainActivity extends Activity {
 Spinner s;
 ArrayList al;
 ArrayAdapter aa;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  s = (Spinner) findViewById(R.id.spinner1);
  al = new ArrayList();
  al.add("Bangalore");
  al.add("Chennai");
  al.add("Hyderabad");
  al.add("Delhi");
  
  aa = new ArrayAdapter(this, 
   android.R.layout.simple_spinner_dropdown_item, al);
  s.setAdapter(aa);  
 }
}

xml file for first activity 
File name : activity_main.xml


 <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"  
   android:paddingBottom="@dimen/activity_vertical_margin"  
   android:paddingLeft="@dimen/activity_horizontal_margin"  
   android:paddingRight="@dimen/activity_horizontal_margin"  
   android:paddingTop="@dimen/activity_vertical_margin"  
   tools:context=".MainActivity" >  
   <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="52dp" />  
 </RelativeLayout>  

Download complete code : Click to download

Tags: android, spinner, cities

No comments:

Post a Comment