android - Color.parseColor 返回负值

标签 android

我刚刚试过这样

System.out.println("color == " + Color.parseColor("#F5F5F5"));

然后它像这样返回

color == -657931

有人知道为什么吗?

最佳答案

首先,parseColor 方法将返回十六进制 F5F5F5 的整数表示,实际上是 FFF5F5F5 +颜色的不透明度。

FFF5F5F5 的十进制值为 4294309365,然后将其转换为会溢出的整数,从而得到负数。

这是一个溢出的例子

    int i = (int)4294309365L; //4294309365L the decimal representation of FFF5F5F5
    System.out.println(i); //result: -657931

关于android - Color.parseColor 返回负值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25073930/

相关文章:

java - ImageView onTouch 不上下移动,只绕圈移动

android - RenderScript 在 macOS Catalina (10.15) 上损坏

android - 请勿打扰模式 - 始终静音来电

安卓人行横道元素 : How to use css?

android - Samsung S7、S8 和 Gionee A1 未记录传入语音

java - 在 Android 中使用 WebView

android - 在 Android 设备上,有没有办法以编程方式获取 ADB 中显示的 USB 序列号?

android - 在 Navigation Drawer Page Sliding Tab Strip Android 方面需要帮助

android - 我怎样才能看到 OkHttp 客户端的完整内部工作?改造套接字关闭超时

android - onActivityCreated() 中的 Bundle 返回 null,即使在 onSaveInstanceState() 中设置值之后