我正在开发一个UI任务,我需要在其中设置以十六进制代码“#ededed”给出的背景颜色。现在我正在使用这段代码:
((VerticalFieldManager) getMainManager()).setBackground(BackgroundFactory.createSolidBackground(**Color.LIGHTGRAY**));
但是代替这个Color.LIGHTGRAY,我必须使用“#ededed”十六进制颜色代码。
请帮助我完成这个小而合乎逻辑的任务。 Thanx提前......!
答案 0 :(得分:4)
怎么样:
((VerticalFieldManager) getMainManager()).setBackground(BackgroundFactory.createSolidBackground(0xededed));
答案 1 :(得分:1)
最简单的解决方案是:
getMainManager().setBackground(BackgroundFactory.createSolidBackground(0xededed));
无需转换为VerticalFieldManager
,因为主要经理是Field
且该类包含setBackground
方法。
答案 2 :(得分:0)
为什么不使用此链接将颜色转换为所需的颜色并在代码中实现
http://easycalculation.com/color-coder.php
如果您的目标是使用java颜色代码,这是最好的链接
http://www.jafar.com/java/csel/index.html
希望它有所帮助。
答案 3 :(得分:0)
以下代码将String(十六进制表示)转换为其等效整数,并将该值用作背景颜色。
String strColor = "#ededed";
// remove # char
strColor = strColor.substring(1);
try {
// get integer equivalent
int iColor = Integer.parseInt(strColor, 16);
getMainManager().setBackground(BackgroundFactory.createSolidBackground(iColor));
} catch (Exception exc) {
}