Android获取ImageView上的图片,和一个有可能遇到的问题!

1.在获取图片前先调用setDrawingCacheEnabled(true)这个方法:

举例:mImageView.setDrawingCacheEnabled(true);

2。之后可以通过getDrawingCache()获取图片

举例:Bitmap obmp = Bitmap.createBitmap(mImageView.getDrawingCache());  //获取到Bitmap的图片

3.获取完图片后记得调用setDrawingCacheEnabled(false)

举例:mImageView.setDrawingCacheEnabled(false);

 这样就可以。

补充:如果你遇到了这行代码Bitmap obmp = Bitmap.createBitmap(mImageView.getDrawingCache());报空指针错误!!!!!!

         解决办法:

                    在这之前添加下面的代码

mImageView.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
mImageView.layout(0, 0, mImageView.getMeasuredWidth(), mImageView.getMeasuredHeight());
mImageView.buildDrawingCache();

原文地址:https://www.cnblogs.com/niupi/p/6000292.html