Android如何从int RGB获取红色,绿色和蓝色值?

时间:2015-01-02 12:29:12

标签: android colors

我使用Palette类从这样的位图中提取主要的鲜艳颜色:

     Palette.generateAsync(drawView.getDrawingCache(), new Palette.PaletteAsyncListener() {
            @Override
             public void onGenerated(Palette palette) {
             int color = palette.getVibrantColor(which);
              }
            });

但我还需要从颜色中获取红色,绿色和蓝色值(范围为0-255)。有什么想法吗?

1 个答案:

答案 0 :(得分:3)

以下代码将显示红色,绿色,蓝色代码:

int color = (int)Long.parseLong(myColorString, 16);
int r = (color >> 16) & 0xFF;
int g = (color >> 8) & 0xFF;
int b = (color >> 0) & 0xFF;