Beginner
    AJAX
    Android
    ASP.Net
    C#
    Cloud Computing
    Crystal Report
    Database
    Drupal
    HTML5
    JavaScript
    Joomla
    JQuery
    MVC
    php
    Reporting
    SharePoint
    SQL Server
    VB.Net
    Windows Phone
    WordPress
    WPF
Follow Us
Follow _MindStick_ on Twitter View MindStick Software's LinkedIn profile View MindStick Software's Facebook profile
Top Contributor
Advertisement
Advertise with Us
Mindstick
Article Article  Forum Forum  Blog Blog  Quiz Quiz  Beginner Beginner  Careers Careers  Contact Contact  Login Login  
Home | Product | Services | About Us | Interview | DeveloperSection | Submit an Article | Submit Blog

Home >> Android >> Display Data in GridView in Android




Display Data in GridView in Android - MindStick

Display Data in GridView in Android

In this article I am going to explain how to display data in GridView in an Android application. Here is the example of Custom GridView in which I have used two TextViews.

         Start a new project named GridViewData.

         Open res/layout/main.xml and insert the following:

<?xml version="1.0" encoding="utf-8"?>

<GridView xmlns:android="http://schemas.android.com/apk/res/android"    

                android:id="@+id/gridview"   

                android:stretchMode="columnWidth"

                android:cacheColorHint="#00000000"

                android:layout_width="fill_parent"

                android:layout_height="fill_parent"

                android:numColumns="1"

                android:clipChildren="true"

                android:horizontalSpacing="5dip"

                android:verticalSpacing="5dip" />

         Create a customgrid.xml inside res/layout folder and insert the following code:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

  xmlns:android="http://schemas.android.com/apk/res/android"

  android:layout_width="fill_parent"

  android:layout_height="fill_parent"

  android:orientation="vertical">

<TableLayout android:id="@+id/TableLayout01"

              android:layout_height="wrap_content"

              android:layout_width="fill_parent">

       <TableRow android:id="@+id/TableRow01"

                  android:layout_height="wrap_content"

                  android:layout_width="wrap_content">

        <TextView  android:text="@string/hello"

            android:layout_width="wrap_content"

                  android:layout_height="wrap_content"

                   android:id="@+id/txtId"

                  android:layout_gravity="center_horizontal" />

        

        <TextView  android:text="@string/hello"

                   android:layout_width="wrap_content"

                   android:layout_height="wrap_content"

                   android:id="@+id/txtName"

                  android:layout_gravity="center_horizontal" />

       </TableRow>

</TableLayout>

</LinearLayout>

         Create DataAdapter.java file and insert the following code:

 

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.TextView;

 

public class DataAdapter extends BaseAdapter

{

       Context mContext;

       private String [] id = {"S001","S002","S003","S004","S005","S006","S007"};

       private String [] name={"Rohit","Rahul","Ravi","Amit","Arun","Anil","Kashif"};

       private LayoutInflater mInflater;

       public DataAdapter(Context c)

       {

              mContext=c;

              mInflater = LayoutInflater.from(c);

       }

       public int getCount()

       {

              return id.length;

       }

       public Object getItem(int position)

       {

              return position;

       }

       public long getItemId(int position)

       {

              return position;

       }

       public View getView(int position, View convertView, ViewGroup parent)

       {

              ViewHolder holder=null;

              if(convertView==null)

              {

                     convertView = mInflater.inflate(R.layout.customgrid,
                                                                    parent,
false);

                     holder = new ViewHolder();

                     holder.txtId=(TextView)convertView.findViewById(R.id.txtId);

                     holder.txtId.setPadding(100, 10,10 , 10);

                     holder.txtName=(TextView)convertView.findViewById(R.id.txtName);

                     holder.txtName.setPadding(100, 10, 10, 10);

                     if(position==0)

                     {                             

                           convertView.setTag(holder);

                     }

              }

              else

              {

                     holder = (ViewHolder) convertView.getTag();

              }

              holder.txtId.setText(id[position]);

              holder.txtName.setText(name[position]);

              return convertView;

       }

       static class ViewHolder

       {        

              TextView txtId;        

              TextView txtName;               

       }

}

         Open the main activity file and modify according to it:

import android.app.Activity;

import android.os.Bundle;

import android.widget.GridView;

 

public class GridViewDataActivity extends Activity {

   

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        GridView gridview = (GridView) findViewById(R.id.gridview);  

       gridview.setAdapter(new DataAdapter(this));

    }

}

         Run the application.
The output should look like below:

Display Data in GridView in Android



 Author Information
Name: Rohit Kesharwani
Member Since: 8/8/2011
Article Submitted Date: 11/1/2011
Location:     India
Report Abuse Form
Reason:    
 
Total Online Users: 7157
Advertisement
MindStick SurveyManager
Advertise with Us
  
Dudelabs
Copyright © 2013MindStick. All Rights Reserved.