首页 > 解决方案 > 如何获取 ImageView 中的当前可绘制对象并将其转换为位图?

问题描述

我有一个动态的、可点击的ImageView. 基本上,一旦用户单击 ImageView,他/她就可以添加要在视图内显示的图像。我想找到一种方法来获取 ImageView 中的当前图像并将其转换为位图。

到目前为止,这是我的尝试:

Bitmap bitmap = BitmapFactory.decodeResource(getContext().getResources(), (BitmapDrawable)imageView.getDrawable());

但它给了我一个Wrong 2nd argument type错误,因为它期待一个int。

为了清楚起见,我暂时保持简短的帖子。我可以根据请求发布更多代码。

标签: androidandroid-bitmap

解决方案


使用此方法获取位图:

BitmapDrawable bitmapDrawable = ((BitmapDrawable) imageView.getDrawable());
Bitmap bitmap = bitmapDrawable .getBitmap();

decodeResource为您提供资源中的位图,例如,如果您想从可绘制文件夹中读取图像,则需要 decodeResource 但在这种情况下,您可以直接从 imageview 中获取位图


推荐阅读