Converter valores RGBA para código de cores hexadecimais

Eu tenho alguns sliders no meu aplicativo que permite ao usuário alterar as cores ARGB, no entanto, eu preciso converter esses valores para um valor hexadecimal como 0xff000000, que é preto sólido.

Isto é o que eu tenho até agora:

<code>protected int toHex(Color col) {
    String as = pad(Integer.toHexString(col.getAlpha()));
    String rs = pad(Integer.toHexString(col.getRed()));
    String gs = pad(Integer.toHexString(col.getGreen()));
    String bs = pad(Integer.toHexString(col.getBlue()));
    String hex = "0x" + as + rs + gs + bs;
    return Integer.parseInt(hex, 16);
}

private static final String pad(String s) {
    return (s.length() == 1) ? "0" + s : s;
}
</code>

No entanto, ao obter o valor Integer como abaixo, recebo um NumberFormatException para a string de entrada: "0xccffffff":

<code>int color = toHex(new Color(153f, 153f, 153f, 0.80f));
</code>

Alguma idéia de como obter isso para um Integer? Obrigado.

questionAnswers(2)

yourAnswerToTheQuestion