in xml file:
 
 
 
< ?xml version="1.0" encoding="utf-8"?> 
< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    > 
< GridView
    android:id="@+id/gridView1"
    android:numColumns="auto_fit"
    android:gravity="center"
    android:columnWidth="50dp"
    android:stretchMode="columnWidth"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" > 
< /GridView> 
< /LinearLayout> 
in cus_gridview file :
< ?xml version="1.0" encoding="utf-8"?> 
< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="5dp" > 
 
    < ImageView
        android:id="@+id/grid_item_image"
        android:layout_width="50px"
        android:layout_height="50px"
        android:layout_marginRight="10px"
        android:src="@drawable/ic_launcher"> 
    < /ImageView> 
 
    < TextView
        android:id="@+id/grid_item_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@+id/label"
        android:layout_marginTop="5dp"
         android:textColor="#FFFFFF"
        android:textSize="16dp" > 
    < /TextView> 
< /LinearLayout> 
 
in java file:
public class SendCard extends Activity {
    GridView gridView; 
    static final String[] Card = new String[] { "Card1","Card2","Card3", "Card4" };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.send_card);
       
         gridView = (GridView) findViewById(R.id.gridView1);
         gridView.setAdapter(new ImageAdapter(this, Card));
         gridView.setOnItemClickListener(new OnItemClickListener() {
         public void onItemClick(AdapterView parent, View v,int position, long id) {
                   
             Toast.makeText(getApplicationContext(),((TextView)v.findViewById(R.id.grid_item_label))
                       .getText(), Toast.LENGTH_SHORT).show();
                }
            });
      }}
in Custom Adapter Class:
public class ImageAdapter extends BaseAdapter {
    private Context context;
    private final String[] mobileValues;
    public ImageAdapter(Context context, String[] mobileValues) {
        this.context = context;
        this.mobileValues = mobileValues;
    }
    public View getView(int position, View convertView, ViewGroup parent) {
        LayoutInflater inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
           View gridView;
        if (convertView == null) {
            gridView = new View(context);
            gridView = inflater.inflate(R.layout.cus_gridview, null);
            TextView textView = (TextView)gridView.findViewById(R.id.grid_item_label);
            textView.setText(mobileValues[position]);
            ImageView imageView = (ImageView)
            gridView.findViewById(R.id.grid_item_image);
           String mobile = mobileValues[position];
            if (mobile.equals("Card1")) {
                imageView.setImageResource(R.drawable.icon);
            } else if (mobile.equals("Card2")) {
                imageView.setImageResource(R.drawable.icon);
            } else if (mobile.equals("Card3")) {
                imageView.setImageResource(R.drawable.icon);
            } else {
                imageView.setImageResource(R.drawable.icon);
            }
        } else {
            gridView = (View) convertView;
        }
        return gridView;
    }
    public int getCount() {
        return mobileValues.length;
    }
    public Object getItem(int position) {
        return null;
    }
    public long getItemId(int position) {
        return 0;
    }}
Comments
Post a Comment