负int颜色值

时间:2016-12-12 11:57:29

标签: java android colors rgb

我有问题。我有一个自定义对象,其中包含

等字段
private String id;
private int key;
private String name;
private String desc;
private int sortorder;
private int color;

这样的构造函数
 public Label(String id, int key, String name, String desc, int sortorder, int color)

在创建像这样的对象时我正在设置颜色

Color.rgb(dialogColorRed, dialogColorGreen, dialogColorBlue)

其中dialogColorRed,dialogColorGreen,dialogColorBlue - 是从0到255的随机分配值。

然后我用JSON打包我的Objects的ArrayList,对象看起来像这样(注意色域)

"color": -6508994,
    "desc": "",
    "id": "81fed08a336b185e226a93f199f34803",
    "key": 87,
    "name": "w",
    "sortorder": 0

我得到负颜色int值,但我需要这样的东西

 "color":"4278255360"

有什么问题?

1 个答案:

答案 0 :(得分:0)

嗨,很晚了,但你有没有尝试过,私钥长密钥;而不是私钥; 说明:您用于存储颜色代码的密钥可能大于整数所能容纳的大小。

整数变量的有效范围是 -2147483648 到 +2147483647。

                       2147483647 MAX

你想要这个数字:4278255360。当一个整数达到最大值时,2147483647 + 1 = -2147483648,它的新值现在是最小值。