1. // 读取uri所在的图片 Uri uri = data.getData(); Log.d(TAG, "目录为:" + uri); mImage.setImageURI(uri);//显示大图片的时候app会崩溃或者是无法显示 2. Uri uri = data.getData(); try { Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), uri); mImage.setImageBitmap(bitmap);//显示图片 } catch (Exception e) { Log.d(TAG, e.getMessage()); e.printStackTrace(); }
3.
private void setImage(Uri uri){ try { Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver() .openInputStream(uri)); Matrix matrix = new Matrix(); matrix.setScale(1.0f, 1.0f); bitmap = Bitmap.createBitmap( bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, false); mImage.setImageBitmap(bitmap); } catch (FileNotFoundException e) { e.printStackTrace(); } }
从ImageView获取图像
// ImageView对象(img)必须做如下设置后,才能获取其中的图像
img.setDrawingCacheEnabled(true);
// 获取ImageView中的图像
bitmap = Bitmap.createBitmap(img.getDrawingCache());
//从ImaggeView对象中获取图像后,要记得调用setDrawingCacheEnabled(false)清空画图缓
//冲区,否则,下一次用getDrawingCache()方法回去图像时,还是原来的图像
img.setDrawingCacheEnabled(false);