簡體   English   中英

從十六進制顏色轉換為RGB

[英]convert from hex color to RGB

如何從“#6F00AC”格式的顏色中獲取RGB值?

我試過了但是沒用

int newcolor = (int)Long.parseLong(String.valueOf(Color.parseColor("#6F00AC")), 16);
    float r = ((newcolor >> 16) & 0xFF) / 255f;
    float g = ((newcolor >> 8) & 0xFF) / 255f;
    float b = ((newcolor >> 0) & 0xFF) / 255f;

顏色具有靜態方法紅色/藍色/綠色和Alpha

int color = Color.parseColor("#6F00AC");
int red = Color.red(color);
int green = Color.green(color);
int blue = Color.blue(color);
int alpha = Color.alpha(color);

它們分別返回顏色int的紅色,藍色,綠色,alpha分量。

編輯:

您的代碼幾乎是正確的,(您不需要除以255)

int r = (color >> 16) & 0xFF;
int g = (color >> 8) & 0xFF;
int b = color & 0xFF;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM