如何将位图图像转换为可绘制?
当前回答
已经看到了大量的问题与位图不正确缩放时,转换为BitmapDrawable,一般的转换方式应该是:
Drawable d = new BitmapDrawable(getResources(), bitmap);
如果没有资源引用,位图可能无法正确呈现,即使缩放正确。这里有许多问题可以通过使用这个方法而不是直接调用位图参数来解决。
其他回答
官方位图绘制文档
这是一个关于如何将位图转换为可绘制的示例
Bitmap bitmap;
//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(getResources(), bitmap);
imageView.setImageDrawable(drawable);
这是另一个:
Drawable drawable = RoundedBitmapDrawableFactory.create(context.getResources(), bitmap);
只要这样做:
private void setImg(ImageView mImageView, Bitmap bitmap) {
Drawable mDrawable = new BitmapDrawable(getResources(), bitmap);
mImageView.setDrawable(mDrawable);
}
已经看到了大量的问题与位图不正确缩放时,转换为BitmapDrawable,一般的转换方式应该是:
Drawable d = new BitmapDrawable(getResources(), bitmap);
如果没有资源引用,位图可能无法正确呈现,即使缩放正确。这里有许多问题可以通过使用这个方法而不是直接调用位图参数来解决。
对于Kotlin用户:
Kotlin有一个转换Bitmap到BitmapDrawable的函数:
Bitmap.toDrawable(资源)
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件