编程语言
首页 > 编程语言> > 如何在Android中以编程方式获取应用图标颜色代码?

如何在Android中以编程方式获取应用图标颜色代码?

作者:互联网

实际上,我的要求是获取设备中安装的任何应用的图标颜色.
我想显示该颜色的锁定屏幕.那么,如何以编程方式获取任何图标的颜色代码?

解决方法:

如果您想从单个图标获取所有颜色的RGB值,

Bitmap bitmap;
// create  the bitmap from your obtained image
int pixel = bitmap.getPixel(x,y); // x,y is the desired position of the target pixel, for full imag, you have to do the same thing in a loop

int red = Color.red(pixel);
int green = Color.green(pixel);
int blue = Color.blue(pixel);

返回的int值是您的标准0-255.您可以修改此代码并从任何地方获取颜色,前提是您可以将其转换为位图.而且您可以使用Color API来获取实际的RGB值,如下所示:

int rgb = Color.rgb(red, blue, green); // rgb value of a single pixel, 

现在,为了一次获取所有像素,可以使用Bitmap.getPixels()

int[] allPixels = new int[bitmap.getWidth()*bitmap.getHeight()];
bitmap.getPixels(allPixels, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());

标签:android-bitmap,android
来源: https://codeday.me/bug/20191120/2044549.html