为什么图片背景是紫色的

Why is the image background purple

我正在尝试在 ImageView 中显示 this transparent image

我用这个下载并设置图像 class:

public class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
    private String TAG = "DownloadImageTask";
    ImageView bmImage;

    public DownloadImageTask(ImageView bmImage) {
        this.bmImage = bmImage;
    }

    protected Bitmap doInBackground(String... urls) {
        String urldisplay = urls[0];
        Bitmap mIcon11 = null;
        try {
            InputStream in = new java.net.URL(urldisplay).openStream();
            mIcon11 = BitmapFactory.decodeStream(in);
        } catch (Exception e) {
            Log.d(TAG, e.getMessage());
            e.printStackTrace();
        }
        return mIcon11;
    }

    protected void onPostExecute(Bitmap result) {
        bmImage.setImageBitmap(result);
    }
}

不幸的是,背景变成了紫色。为什么它会变成紫色,我该如何解决?

不是解决方案,但更像是修复。

我创建了一个可变位图并更改了颜色。

    Bitmap copy = result.copy(Bitmap.Config.ARGB_8888, true);

    int [] allpixels = new int [ copy.getHeight()*copy.getWidth()];
    copy.getPixels(allpixels, 0, copy.getWidth(), 0, 0, copy.getWidth(), copy.getHeight());
    for(int i =0; i < copy.getHeight() * copy.getWidth(); i++)
    {
        if( allpixels[i] == Color.MAGENTA)
        {
            allpixels[i] = Color.TRANSPARENT;
        }
    }
    copy.setPixels(allpixels, 0, copy.getWidth(), 0, 0, copy.getWidth(), copy.getHeight());

    bmImage.setImageBitmap(copy);