gpt4 book ai didi

android - 用 RoundedBitmapDrawable 覆盖 onDraw

转载 作者:行者123 更新时间:2023-11-30 02:27:54 25 4
gpt4 key购买 nike

我正在尝试使用 RoundedBitmapDrawable 覆盖我的 CustomImageView onDraw 方法在 Android 上创建一个 CircleImageView,但我永远无法显示图像。

我的代码:

@Override
protected void onDraw(Canvas canvas) {
Drawable drawable = getDrawable();

if (drawable == null) {
return;
}

if (getWidth() == 0 || getHeight() == 0) {
return;
}
Bitmap b = ((BitmapDrawable)drawable).getBitmap() ;
Bitmap bitmap = b.copy(Bitmap.Config.ARGB_8888, true);

RoundedBitmapDrawable bmp = getCroppedBitmap(bitmap);
bmp.setAntiAlias(true);
bmp.setDither(true);
bmp.setCornerRadius(Math.min(drawable.getMinimumWidth(),drawable.getMinimumHeight()));
bmp.draw(canvas);
}

private RoundedBitmapDrawable getCroppedBitmap(Bitmap bitmapimg) {
return RoundedBitmapDrawableFactory.create(getResources(),bitmapimg);
}

我做错了什么,我应该如何让它发挥作用?

谢谢

最佳答案

其实我忘记了一个简单的事情:

bmp.setBounds(new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()));

感谢您的帮助!

关于android - 用 RoundedBitmapDrawable 覆盖 onDraw,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27683467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com