我真的很困惑,将TextView.setTextColor(int)
0xFFFFFFFF 作为输入值是完全可以的,但对于 4294967295 的十进制等值则不行
现在,我完全理解为什么第二个值完全超出了 int 的范围。我的问题是为什么十六进制值没有超出范围!
我问的原因是我有一种情况,我从一个文本文件中读取十六进制值,我需要在运行时使用它来设置应用程序中各种文本字段的颜色。
我在尝试 Java 中的各种字符串到 int 方法时遇到了困难(Long.parseLong
等),但他们都没有做到这一点。
将字符串十六进制值转换为 setTextColor 会满意并正确解释的正确方法是什么?