CodenameOne TextView 前景色

3

我是codename one的新手,尝试设置TextView的前景(文本)颜色。在按下按钮后将其设置为红色并编写文本有效。代码在按钮的动作侦听器方法中执行:

mValueField.getStyle().setFgColor(0xFF0000); // set red color
mValueField.setText("Fill in!"); // write info text

在将焦点设置到字段中后,文本应该消失并且颜色应该再次变为黑色。代码在TextField的focusGained()方法中执行:

mValueField.setText(""); // clear info text
mValueField.getStyle().setFgColor(0x000000); // set black color

问题是文本消失了,但新字符仍然是红色而不是黑色。 有没有解决方案?
1个回答

2

不要使用getStyle()方法,它只适用于在paint()或类似的方法中使用。由于组件有多个状态,您需要自定义每个单独的状态,例如getUnselectedStyle()getSelectedStyle()等。

或者,您可以使用getAllStyles()一次性设置所有样式。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接