简体   繁体   English

我如何在 android 中将 statelistDrawable 转换为 bitmapdrawable

[英]How can i convert a statelistDrawable to bitmapdrawable in android

How can i convert a state list Drawable to bitmap drawable in android.我如何将状态列表 Drawable转换为在 android中绘制位图 I want to convert a statelist drawable into bitmap drawable.我想将 statelist drawable 转换为 bitmap drawable。

I found a work around if i find any icon whose type is other then bitmap drawable then use this code here searchResult.getIcon() is my icon value如果我发现任何类型的图标不是位图可绘制的,我找到了一个解决方法,然后在此处使用此代码searchResult.getIcon()是我的图标值

  Bitmap bitmap = Bitmap.createBitmap(searchResult.getIcon().getIntrinsicWidth(),searchResult.getIcon().getIntrinsicHeight(), Config.ARGB_8888);
            Canvas canvas = new Canvas(bitmap); 
            searchResult.getIcon().setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
            searchResult.getIcon().draw(canvas);
            itemIconBitmap = bitmap;
            e.printStackTrace();

You can use toBitmap or casting the current drawable您可以使用 toBitmap 或投射当前可绘制对象

(stateListDrawable as? StateListDrawable)?.let { drawable ->
                            (drawable.current as BitmapDrawable).bitmap
                        }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM