如何设置单选按钮控件的颜色?

How do I set the color of the radio button's control?

如何设置单选按钮控件的颜色?无论我在样式中指定什么颜色,它都会以黑色绘制外圆和内子弹。我希望它在黑色背景上以白色绘制以匹配我的主题,但它始终以黑色绘制。 (我实际上是在多按钮中执行此操作,设置标志 UIID 的颜色。)


我尝试了第一个建议,定义常量。那没有用。事情是这样的。

我尝试了两种方法。首先,我只定义了 radioSelectedImage 和 radioUnselectedImage。当这不起作用时,我添加了两个 radio*DisImage 值,但它做了同样的事情。选中和未选中的图像工作正常,但只要我触摸一个单选按钮,它就会获得焦点,并且按钮被绘制成黑色,这使得它在我的黑色背景下不可见。

我确实找到了一种有效的方法,但它需要使用两个已弃用的 classes。这是我添加到 main class:

的 init() 方法中的内容
    LookAndFeel lookAndFeel = UIManager.getInstance().getLookAndFeel();
    if (lookAndFeel instanceof DefaultLookAndFeel) {
        DefaultLookAndFeel defaultLookAndFeel = (DefaultLookAndFeel) lookAndFeel;
        Image sel = theme.getImage("RadioButtonSelected.png");
        Image unSel = theme.getImage("RadioButtonUnselected.png");
        defaultLookAndFeel.setRadioButtonImages(sel, unSel, sel, unSel);
        defaultLookAndFeel.setRadioButtonFocusImages(sel, unSel, sel, unSel);
    }

这里的区别是我有办法设置焦点图像。我不能使用常量来做到这一点,这可能就是它不起作用的原因。我真的不想使用已弃用的 classes.

有主题常量允许您将图像添加到单选按钮以用于未选中、选中等。看这里...

https://www.codenameone.com/manual/advanced-theming.html