如何从byte []创建Drawable?(机器人)

Pau*_*ros 17 android bytearray type-conversion drawable

我有一个字节数组,我需要将其转换为Android Drawable.我该如何进行此转换?

这是我尝试但没有成功:

byte[] b = getByteArray();
ByteArrayInputStream is = new ByteArrayInputStream(b);
Drawable drw = Drawable.createFromStream(is, "articleImage");
Run Code Online (Sandbox Code Playgroud)

drw总是空的!

编辑:

我的byte []实际上已损坏/不完整,这就是问题所在.

use*_*305 34

如果你的byte[] b是包含imagedata,那么你也可以尝试这个,

 Drawable image = new BitmapDrawable(BitmapFactory.decodeByteArray(b, 0, b.length));
Run Code Online (Sandbox Code Playgroud)

编辑

现在不推荐使用没有Resources的BitmapDrawable构造函数,所以请改用:

Drawable image = new BitmapDrawable(getResources(),BitmapFactory.decodeByteArray(b, 0, b.length));
Run Code Online (Sandbox Code Playgroud)

试试这个,让我知道发生了什么,


Cam*_*e R 1

你真的需要一个 Drawable 吗?如果位图可以容纳,那么:

Bitmap bitmap = BitmapFactory.decodeStream(is);
Run Code Online (Sandbox Code Playgroud)