如何将Hex颜色值转换为libgdx颜色?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将Hex颜色值转换为libgdx颜色?相关的知识,希望对你有一定的参考价值。

我首先尝试将其转换为RGB,然后将值除以255,但结果不是我想要的。颜色比原始颜色更亮。

答案

你有没有尝试过类Colorg of Libgdx的函数valueOf()?

Color.valueOf(StringHex); //从字符串十六进制返回颜色

该功能执行以下操作,因为您没有发布任何代码,也许您可​​以发现出现问题:

/** Returns a new color from a hex string with the format RRGGBBAA.
     * @see #toString() */
    public static Color valueOf (String hex) {
        hex = hex.charAt(0) == '#' ? hex.substring(1) : hex;
        int r = Integer.valueOf(hex.substring(0, 2), 16);
        int g = Integer.valueOf(hex.substring(2, 4), 16);
        int b = Integer.valueOf(hex.substring(4, 6), 16);
        int a = hex.length() != 8 ? 255 : Integer.valueOf(hex.substring(6, 8), 16);
        return new Color(r / 255f, g / 255f, b / 255f, a / 255f);
    }

以上是关于如何将Hex颜色值转换为libgdx颜色?的主要内容,如果未能解决你的问题,请参考以下文章

在 C 中从 HEX 颜色转换为 RGB 结构

将RGB颜色转换为HEX颜色

Sass/Compass - 将 Hex、RGB 或命名颜色转换为 RGBA

如何将 RGB 或 HEX 颜色代码分组为更大的颜色组?

在Android中将任何颜色代码转换为最接近的人类颜色[重复]

javascript编写一个将十六进制值转换为颜色的函数