import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.graphics.Picture;
import android.os.Bundle;
import android.widget.GridView;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
private GridView gv;
private List<MyPicture > ps;
private GridAdapter adapter;
int []pid={
R.drawable.fruit_01,
R.drawable.fruit_02,
R.drawable.fruit_03,
R.drawable.fruit_04,
R.drawable.fruit_05,
R.drawable.fruit_06,
R.drawable.fruit_07,
R.drawable.fruit_08,
R.drawable.fruit_09,
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gv=(GridView) findViewById(R.id.grid);
ps=new ArrayList<MyPicture>();
for(int i=0;i<9;i++)
{
MyPicture p=new MyPicture();
p.Imageid=pid[i];
p.ImageName=(i+1)+"";
ps.add(p);
}
adapter=new GridAdapter(ps,this);
gv.setAdapter(adapter);
}
}
package com.lch.grideview;
import java.util.List;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class GridAdapter extends BaseAdapter {
private List<MyPicture> pictures;
private LayoutInflater inflater;
private Context context;
public GridAdapter(List<MyPicture>ps,Context context)
{
this.pictures=ps;
this.context=context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
if(pictures!=null)
return pictures.size();
else
return 0;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return pictures.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
Viewholder holder;
if(convertView==null)
{
inflater=LayoutInflater.from(context);
convertView=inflater.inflate(R.layout.grid, null);
holder=new Viewholder();
holder.title=(TextView) convertView.findViewById(R.id.txt);
holder.image=(ImageView) convertView.findViewById(R.id.img);
convertView.setTag(holder);
}
else
{
holder=(Viewholder) convertView.getTag();
}
holder.title.setText(pictures.get(position).ImageName);
holder.image.setImageResource(pictures.get(position).Imageid);
return convertView;
}
class Viewholder
{
public TextView title;
public ImageView image;
}
}