2011-10-09 43 views
0

我想解析ARGB十六進制Stringint,但它不工作。無法解析ARGB十六進制整數

我的代碼:

int color = Integer.parseInt("ff686868", 16); 

例外:

java.lang.NumberFormatException: unable to parse 'ff686868' as integer 
at java.lang.Integer.parse(Integer.java:438) 
at java.lang.Integer.parseInt(Integer.java:422) 
... 

當我嘗試解析正常RGB String686868它的工作,但是當我加入阿爾法它打破了。我希望有一個人可以幫助我。

回答

3

該數字對於整數來說太大。

用途:Long.parseLong(..)

3

使用java.lang.Long.parseLong() - int簽訂所以它是唯一的31位+ 1符號位,並使用所有4 * 8 = 32位。

3

您可以使用Color.parseColor(String)獲得INT

0
Color.parseColor(String); 

如果伊茨hexacode做到這一點

Color.parseColor("#ffffff");