android GridView(网格视图)

GridView01.java:

复制到剪贴板  Java代码
  1.   
  2.   
  3. package com.GridView01;   
  4.   
  5. import android.app.Activity;   
  6. import android.graphics.Color;   
  7. import android.os.Bundle;   
  8. import android.widget.AdapterView;   
  9. import android.widget.GridView;   
  10. import android.widget.Toast;   
  11. import android.widget.AdapterView.OnItemClickListener;   
  12. import android.view.View;   
  13.   
  14. public class GridView01 extends Activity {   
  15.  GridView mGridView;   
  16.     /** Called when the activity is first created. */  
  17.     @Override  
  18.     public void onCreate(Bundle savedInstanceState) {   
  19.         super.onCreate(savedInstanceState);   
  20.         setContentView(R.layout.main);   
  21.            
  22.         mGridView=(GridView)findViewById(R.id.mGridView);   
  23.            
  24.         //添加元素给mGridView   
  25.         mGridView.setAdapter(new ImageAdapter(this));   
  26.            
  27.         mGridView.setBackgroundColor(Color.WHITE);   
  28.            
  29.         mGridView.setOnItemClickListener(new OnItemClickListener()   
  30.         {   
  31.          public void onItemClick(AdapterView<?>parent,View v,int position,long id)   
  32.          {   
  33.           Toast.makeText(GridView01.this"you chose"+(position=1), Toast.LENGTH_SHORT).show();   
  34.          }   
  35.         });   
  36.            
  37.            
  38.     }   
  39. }   
  40.   

ImageAdapter.java:

复制到剪贴板  Java代码
  1. package com.GridView01;   
  2.   
  3. import android.content.Context;   
  4. import android.view.View;   
  5. import android.view.ViewGroup;   
  6. import android.widget.BaseAdapter;   
  7. import android.widget.GridView;   
  8. import android.widget.ImageView;   
  9.   
  10. public class ImageAdapter extends BaseAdapter   
  11. {   
  12.  // 定义Context   
  13.  private Context  mContext;   
  14.  // 定义整型数组 即图片源   
  15.  private Integer[] mImageIds =    
  16.  {    
  17.    R.drawable.img1,    
  18.    R.drawable.img2,    
  19.    R.drawable.img3,    
  20.    R.drawable.img4,    
  21.    R.drawable.img5,    
  22.    R.drawable.img6,    
  23.    R.drawable.img7,   
  24.    R.drawable.img8,    
  25.    R.drawable.img1,    
  26.  };   
  27.   
  28.  public ImageAdapter(Context c)   
  29.  {   
  30.   mContext = c;   
  31.  }   
  32.   
  33.  // 获取图片的个数   
  34.  public int getCount()   
  35.  {   
  36.   return mImageIds.length;   
  37.  }   
  38.   
  39.  // 获取图片在库中的位置   
  40.  public Object getItem(int position)   
  41.  {   
  42.   return position;   
  43.  }   
  44.   
  45.   
  46.  // 获取图片ID   
  47.  public long getItemId(int position)   
  48.  {   
  49.   return position;   
  50.  }   
  51.   
  52.   
  53.  public View getView(int position, View convertView, ViewGroup parent)   
  54.  {   
  55.   ImageView imageView;   
  56.   if (convertView == null)   
  57.   {   
  58.    // 给ImageView设置资源   
  59.    imageView = new ImageView(mContext);   
  60.    // 设置布局 图片120×120显示   
  61.    imageView.setLayoutParams(new GridView.LayoutParams(8585));   
  62.    // 设置显示比例类型   
  63.    imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);   
  64.   }   
  65.   else  
  66.   {   
  67.    imageView = (ImageView) convertView;   
  68.   }   
  69.   
  70.   imageView.setImageResource(mImageIds[position]);   
  71.   return imageView;   
  72.  }   
  73.   
  74. }   

main.xml:

复制到剪贴板  XML/HTML代码
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <GridView xmlns:android="http://schemas.android.com/apk/res/android"  
  3.  android:id="@+id/mGridView"  
  4.  android:layout_width="fill_parent"  
  5.  android:layout_height="fill_parent"  
  6.  android:numColumns="auto_fit"  
  7.  android:verticalSpacing="10dp"  
  8.  android:horizontalSpacing="10dp"  
  9.  android:columnWidth="90dp"  
  10.  android:stretchMode="columnWidth"  
  11.  android:gravity="center"  
  12.  />  

你可能感兴趣的:(android GridView(网格视图))