一、ColorUtility顏色工具類
顏色的十六進制值和RGBA的相互轉換就是將RGBA對應的值轉換成十進制(Color的RGBA)或者十六進制(Hex Color),如果你想要研究這兩個值的計算,可以自行百度,如果你只是想獲取這兩個值的話,ColorUtility類可以滿足你的需求。
比如說你有什麼動態的顏色,或者不想每次去找十六進制值,也不想自己寫代碼計算,就可以調用這個API。
void Start()
{
//獲取十六進制值
Color _color = Color.red;
string _redString = ColorUtility.ToHtmlStringRGB(_color);
Debug.Log(_redString);//FF0000
_redString = ColorUtility.ToHtmlStringRGBA(_color);
Debug.Log(_redString);//FF0000FF
//獲取Color
Color _newColor;
ColorUtility.TryParseHtmlString("#8F8D98FF", out _newColor);
Debug.Log("<color=red>紅色</color>");
Color32 _testColor = new Color32(100, 200, 150, 100);
string _testString = ColorUtility.ToHtmlStringRGB(_testColor);
Debug.Log(string.Format("<color=#{0}>不知道什麼顏色</color>", _testString));
}
運行結果如下: