我正在开发一个 android 应用程序,在其中将图像设置为 imageview。现在编程我想更改位图图像颜色。假设我的图像最初是红色的,现在我需要将其更改为橙色。我怎样才能做到这一点?请帮忙。
这是我的代码。我设法改变了不透明度,但我不知道如何改变颜色。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView iv = (ImageView) findViewById(R.id.img);
Drawable d = getResources().getDrawable(R.drawable.pic1);
Bitmap mNewBitmap = ((BitmapDrawable)d).getBitmap();
Bitmap nNewBitmap = adjustOpacity(mNewBitmap);
iv.setImageBitmap(nNewBitmap);
}
private Bitmap adjustOpacity( Bitmap bitmap ) {
int width = bitmap.getWidth();
int height = bitmap.getHeight();
Bitmap dest = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
int[] pixels = new int[width * height];
bitmap.getPixels(pixels, 0, width, 0, 0, width, height);
dest.setPixels(pixels, 0, width, 0, 0, width, height);
return dest;
}
原文由 user456118 发布,翻译遵循 CC BY-SA 4.0 许可协议
我得到了一种解决方案。