我有一个从服务器下载图片的NetworkImageView。但是,要求能够在下载图像后旋转图像。我有一个旋转图像功能,但我需要获得与NetworkImageView关联的位图,以便我旋转位图。如何从NetworkImageView访问BitMap?
发布于 2016-07-28 13:40:23
你可以使用下面的方法来获取任何视图的位图。
Bitmap bitmap = viewToBitmap(mImageView);
Bitmap bitmap = viewToBitmap(mLinearlayout);
Bitmap bitmap = viewToBitmap(mRelativelayout);
public Bitmap viewToBitmap(View view) {
Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
view.draw(canvas);
return bitmap;
}发布于 2016-07-28 13:49:42
希望这能有所帮助
更新
创建截击图像请求。在NetworkImageView中加载和设置图像后,此代码将起作用。否则,它将返回一个空指针,因为NetworkImageView中没有视图/图像
mNetworkImageView = (NetworkImageView) view.findViewById(R.id.networkImage);
Bitmap bitmap = ((BitmapDrawable) mNetworkImageView.getDrawable()).getBitmap();还有另一种方法可以使用Volley并获取位图。
Create an ImageRequest
inside the onResponse(), obtain the Bitmap and set it to your ImageView (Not NetworkImageView). I had mentioned this method in the comments above.
https://stackoverflow.com/questions/38627846
复制相似问题