Android GridView 图片和文字结合


  1. package com.wljie.adpater;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.HashMap;  
  5. import java.util.List;  
  6.   
  7. import Android.app.Activity;  
  8. import android.content.ContentResolver;  
  9. import android.database.Cursor;  
  10. import android.os.Bundle;  
  11. import android.provider.MediaStore.Images.Thumbnails;  
  12. import android.util.Log;  
  13. import android.widget.GridView;  
  14.   
  15. public class Main extends Activity {  
  16.     /** Called when the activity is first created. */  
  17.      private ContentResolver cr;  
  18.      private final String TAG="Main";  
  19.     @Override  
  20.     public void onCreate(Bundle savedInstanceState) {  
  21.         super.onCreate(savedInstanceState);  
  22.         setContentView(R.layout.main);  
  23.         GridView gridView = (GridView) findViewById(R.id.gridview);  
  24.         List<HashMap<String, String>> list = getimageList();  
  25.         gridView.setAdapter(new MyAdpater(this, list));  
  26.     }  
  27.   
  28.   
  29.      private   List<HashMap<String, String>>  getimageList() {  
  30.             List<HashMap<String, String>> list = new ArrayList<HashMap<String,String>>();  
  31.             cr = getContentResolver();    
  32.             String[] projection = { Thumbnails._ID, Thumbnails.IMAGE_ID,  Thumbnails.DATA };    
  33.             Cursor cur = cr.query(Thumbnails.EXTERNAL_CONTENT_URI, projection,nullnullnull);   
  34.             if (cur.moveToFirst()) {    
  35.                 int _id;    
  36.                 int image_id;    
  37.                 String image_path;    
  38.                 int _idColumn = cur.getColumnIndex(Thumbnails._ID);    
  39.                 int image_idColumn = cur.getColumnIndex(Thumbnails.IMAGE_ID);    
  40.                 int dataColumn = cur.getColumnIndex(Thumbnails.DATA);    
  41.                 do {    
  42.                     _id = cur.getInt(_idColumn);    
  43.                     image_id = cur.getInt(image_idColumn);    
  44.                     image_path = cur.getString(dataColumn);    
  45.                     Log.i(TAG, _id + " image_id:" + image_id + " path:"+ image_path + "---");    
  46.                     HashMap hash = new HashMap();    
  47.                     hash.put("image_id", image_id +"");    
  48.                     hash.put("path", image_path);    
  49.                     list.add(hash);    
  50.         
  51.                 } while (cur.moveToNext());    
  52.         
  53.             }  
  54.             return list;    
  55.      }  
  56. }  
view plaincopy to clipboardprint?
  1. package com.wljie.adpater;  
  2.   
  3. import java.util.HashMap;  
  4. import java.util.List;  
  5.   
  6.   
  7. import android.content.Context;  
  8. import android.graphics.Bitmap;  
  9. import android.graphics.BitmapFactory;  
  10. import android.view.LayoutInflater;  
  11. import android.view.View;  
  12. import android.view.ViewGroup;  
  13. import android.widget.BaseAdapter;  
  14. import android.widget.ImageView;  
  15. import android.widget.TextView;  
  16.   
  17. public class MyAdpater extends BaseAdapter {  
  18.   
  19.     private List<HashMap<String, String>> list ;  
  20.     private Context context;  
  21.       
  22.     public MyAdpater(Context context,List<HashMap<String, String>> list) {  
  23.         this.list = list;  
  24.         this.context = context;  
  25.     }  
  26.       
  27.     @Override  
  28.     public int getCount() {  
  29.         return list.size();  
  30.     }  
  31.   
  32.     @Override  
  33.     public Object getItem(int position) {  
  34.         return list.get(position);  
  35.     }  
  36.   
  37.     @Override  
  38.     public long getItemId(int position) {  
  39.         return position;  
  40.     }  
  41.   
  42.     @Override  
  43.     public View getView(int position, View convertView, ViewGroup parent) {  
  44.         MyView tag;  
  45.         if (convertView == null) {  
  46.             View v = LayoutInflater.from(context).inflate(R.layout.night_item, null);  
  47.             tag  = new MyView();  
  48.             tag.imageView = (ImageView) v.findViewById(R.id.itemImage);  
  49. //          tag.textView = (TextView) v.findViewById(R.id.itemText);   
  50. //          tag.textView2 = (TextView) v.findViewById(R.id.desc);   
  51.             v.setTag(tag);  
  52.             convertView = v;  
  53.         }else{  
  54.             tag= (MyView)convertView.getTag();  
  55.         }  
  56.         String image_path = list.get(position).get("path");  
  57.         String text = list.get(position).get("image_id");  
  58.         Bitmap bitmap = BitmapFactory.decodeFile(image_path);  
  59.         Bitmap newBit = Bitmap.createScaledBitmap(bitmap, 10080true);   
  60.         tag.imageView.setImageBitmap(newBit);  
  61. //      tag.textView.setText(text);   
  62. //      tag.textView2.setText(text);   
  63.         return convertView;  
  64.     }  
  65.   
  66.     class MyView{  
  67.         ImageView imageView;  
  68.         TextView textView;  
  69.         TextView textView2;  
  70.     }  
  71. }  
  • 1
  • 2
  • 下一页

相关内容