Wednesday 13 November 2013

List Activity Example

     List Activity Example

Hello Friend,
 In this post i am going to explain various type of list related control like, ListView, GridView, Spinner and AutoCompleteBox etc. Listview is one of the impressive way to represent data in list.

Create an project name ListExampleProject.

create HomeActivity.java in src folder.
Code For HomeActivity:-



package in.androidshivendra.listexampleproject;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;

public class HomeActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.home, menu);
return true;
}
public void nextActivity(View v)
{
Intent i = new Intent();
switch(v.getId())
{
case R.id.button1: i.setClass(HomeActivity.this, ListViewExample.class);
startActivity(i);
break;
case R.id.button2: i.setClass(HomeActivity.this, GridViewExample.class);
startActivity(i);
break;
case R.id.button3: i.setClass(HomeActivity.this, AutoCompleteBoxExample.class);
startActivity(i);
break;
case R.id.button4: i.setClass(HomeActivity.this, SpinnerExample.class);
startActivity(i);
break;
}
}

}
create a xml file within res/layout/activity_home.xml


    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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=".HomeActivity" >

   
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="List Examples"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textStyle="bold"
        android:typeface="monospace" />

   



// Now For creating ListView you have to done these steps.
1. Put a ListView on layout xml file.
2.Initiate ListView at Java Src File.
3.Create an Array.
4.Crate an ArrayAdapter object by this way.
ArrayAdapter adp = new ArrayAdapter(context,resource_view,array);
5set the adapter on ListView object.

Complete code:-


package in.androidshivendra.listexampleproject;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

public class ListViewExample extends Activity {


String state[] = {"Bihar","Delhi","Punjab","UP","Rajasthan"};
ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_view_example);
lv = (ListView)findViewById(R.id.listView1);
ArrayAdapter adp = new ArrayAdapter
(ListViewExample.this, android.R.layout.simple_list_item_1,state);

lv.setAdapter(adp);
// To Apply click listener on list items.

lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

@Override
public void onItemClick(AdapterView parent, View v, int position,
long id) {
// TODO Auto-generated method stub
Toast.makeText(ListViewExample.this, state[position]+" is clicked", Toast.LENGTH_LONG).show();

}
});

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.list_view_example, menu);
return true;
}

}

create a xml file with in src/activity_list_view_example.xml

    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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=".ListViewExample" >

            android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
   




Android Grid View Example

Java source code for creating gridview.

package in.androidshivendra.listexampleproject;


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

public class GridViewExample extends Activity {
String [] abc={"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
GridView gv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grid_view_example);
GridView gv = (GridView)findViewById(R.id.gridView1);
ArrayAdapteradp=new ArrayAdapter(GridViewExample.this, 
android.R.layout.simple_list_item_1,City);
gv.setAdapter(adp);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.grid_view_example, menu);
return true;
}

}

Activity layout code:
 create activity_grid_view_example.xml in layout folder.



    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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=".GridViewExample" >

   
        android:id="@+id/gridView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:numColumns="3" >
   

Spinner Example:-

spinner is used as combo box. it provide drop down list.

java source code:-
package in.androidshivendra.listexampleproject;



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.RatingBar;
import android.widget.Spinner;
import android.widget.Toast;

public class SpinnerExample extends Activity {
String [] rate={"0.5","1","1.5","2","2.5","3","3.5","4","4.5","5"};
Spinner sp;
RatingBar rb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_spinner_example);
sp=(Spinner)findViewById(R.id.spinner1);
rb=(RatingBar)findViewById(R.id.ratingBar1);
ArrayAdapteradp=new ArrayAdapter(SpinnerExample.this, 
R.layout.row,rate);
sp.setAdapter(adp);
sp.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override
public void onItemSelected(AdapterView parent, View v,
int pos, long id) {
// TODO Auto-generated method stub
rb.setRating(Float.parseFloat(rate[pos]));
}

@Override
public void onNothingSelected(AdapterView arg0) {
// TODO Auto-generated method stub
Toast.makeText(SpinnerExample.this, "No Rating Given", Toast.LENGTH_LONG).show();
}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.spinner_example, menu);
return true;
}

}

Activity layout code:
 create activity_spinner_example.xml in layout folder.


    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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=".SpinnerExample" >

   
        android:id="@+id/spinner1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

   
        android:id="@+id/ratingBar1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom" />


 AutoCompleteTextView Example:-


java source code:-

package in.androidshivendra.listexampleproject;


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

public class AutoCompleteBoxExample extends Activity {
String studentname[]= {"Pradeep","Tarun","Saan","Mukesh","Manish","Nikhil","Sunil"};
AutoCompleteTextView av;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_auto_complete_box);
av = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
ArrayAdapter adp = new ArrayAdapter(AutoCompleteBoxExample.this,android.R.layout.simple_list_item_1,studentname);
 
av.setAdapter(adp);

av.setThreshold(1); // setThreshold method is must call because it describe after how many word typing the hint will available.
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.auto_complete_box, menu);
return true;
}

}

Activity layout code:
 create activity_auto_complete_box.xml in layout folder.


    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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=".AutoCompleteBoxExample" >

   
        android:id="@+id/autoCompleteTextView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10" >

       
   



No comments:

Today's Pageviews