从相册中获取图片

   private String pathImage;                       //选择图片路径


  //选择图片
  Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
  startActivityForResult(intent, IMAGE_OPEN);



 //获取图片路径 响应startActivityForResult
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    //打开图片
    if(resultCode==RESULT_OK && requestCode==IMAGE_OPEN) {
        Uri uri = data.getData();
        if (!TextUtils.isEmpty(uri.getAuthority())) {
            //查询选择图片
            Cursor cursor = getContentResolver().query(
                    uri,
                    new String[] { MediaStore.Images.Media.DATA },
                    null,
                    null,
                    null);
            //返回 没找到选择图片
            if (null == cursor) {
                return;
            }
            //光标移动至开头 获取图片路径
            cursor.moveToFirst();
            pathImage = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DATA));
        }
    }  //end if 打开图片
}



 //刷新图片
@Override
protected void onResume() {
    super.onResume();
    if(!TextUtils.isEmpty(pathImage)){
        Bitmap addbmp = BitmapFactory.decodeFile(pathImage);
        HashMap map = new HashMap();
        map.put("itemImage", addbmp);
        imageItem.add(map);
        simpleAdapter = new SimpleAdapter(this, imageItem, R.layout.griditem_addpic,
                new String[] { "itemImage"}, new int[] { R.id.imageView1});
        simpleAdapter.setViewBinder(new ViewBinder() {
            @Override
            public boolean setViewValue(View view, Object data, String textRepresentation) {
                // TODO Auto-generated method stub
                if(view instanceof ImageView && data instanceof Bitmap){
                    ImageView i = (ImageView)view;
                    i.setImageBitmap((Bitmap) data);
                    return true;
                }
                return false;
            }
        });
        gridView1.setAdapter(simpleAdapter);
        simpleAdapter.notifyDataSetChanged();
        //刷新后释放防止手机休眠后自动添加
        pathImage = null;
    }
}

你可能感兴趣的:(从相册中获取图片)