在开始使用RoundedBitmapDrawable修整Bitmap
的角之前,一切工作都很好。
开始使用RoundedBitmapDrawable
之后,我得到:
java.lang.ClassCastException:
android.support.v4.graphics.drawable.RoundedBitmapDrawable21无法转换为android.graphics.drawable.BitmapDrawable
码:
BitmapDrawable bitmapDrawable = ((BitmapDrawable) imageView.getDrawable());
最佳答案
这两种类型之间没有分层链接,只是它们共享同一父级。相反,您可以在运行时检查drawable的类型并进行相应的转换,
if (imageView.getDrawable() instanceof android.support.v4.graphics.drawable.RoundedBitmapDrawable) {
RoundedBitmapDrawable drawable = (RoundedBitmapDrawable) imageView.getDrawable();
Bitmap roundedBitmap = drawable.getBitmap();
// ...
}