尝试使用透明图像,但添加了黑色背景

时间:2013-11-07 03:54:30

标签: android background transparency

我的drawable文件夹中有一个透明图像,我正在尝试使用Intent发送它。图像加载并发送得很好,但它不再透明,并附有黑色bacground。这就是我发送图像的方式

Intent localIntent = new Intent("android.intent.action.SEND");      
localIntent.putExtra(Intent.EXTRA_STREAM,         
Uri.parse("android.resource://com.t4t.stickerwhatsapp/" + videoDetails.get(pos)));
localIntent.setType("image/*");
startActivityForResult(localIntent,111);

videoDetails.get(pos)是drawable文件夹中图像的id。为什么在我的图像中添加黑色背景?

编辑:事实证明我的手机正在将黑色bg添加到我收到的所有透明图像中,而不是在发送之前添加它的代码。

2 个答案:

答案 0 :(得分:0)

您应该使用getResources()提供的资源从资源中获取可绘制的内容。

我建议您使用:

Drawable drawable = getResources().getDrawable(R.drawable.image);

图像的ID可能会发生变化,并且对其进行监控是一个坏主意。如果你必须这样做,你可以使用:

getResources().getIdentifier("image", "drawable","package_name");

如果图像仍然不透明,我可能会尝试使用Color.Transparent设置drawables背景颜色。这可能是一些问题,特别是如果另一方面正在处理drawable。

答案 1 :(得分:0)

事实证明我的手机正在将黑色bg添加到我收到的所有透明图像中,而不是在发送之前添加它的代码。