Android使用在运行时创建的图像作为背景

时间:2014-07-25 22:14:21

标签: android android-layout image-processing pixels

所以我有一个常规的drawable,我想用它来做很多变化。我计划用特定的变化替换某些像素颜色。为了减少应用程序所需的图像文件数量,我计划在运行时进行这种像素操作。我可以在运行时创建要使用的可绘制/后台资源吗?或者在Android上这是不可能的?就像我从.png文件开始一样,在运行时我将它修改为类似的.png文件。我可以使用新的.png文件作为布局的背景,而程序仍在使用吗?

由于

1 个答案:

答案 0 :(得分:0)

我认为您不需要每次都创建一个新的.png文件。请看this question。第一个答案提供了一种在运行时以像素方式操作位图对象的方法。所以你从你的应用程序提供的.png文件开始,通过这样做得到一个位图:

Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.bitmap_resource);

然后您可以操作位图并再次更改背景。如果您愿意,也可以使用以下方法将其保存为.png:

bitmap.compress(Bitmap.CompressFormat.PNG, quality, outStream);

查看位图here的文档。