BlackBerry - 如何为可聚焦字段绘制自定义可聚焦颜色/样式?

时间:2009-12-11 10:50:57

标签: user-interface blackberry custom-controls themes

我有自定义绘制的可聚焦字段。 通常默认的焦点颜色是蓝色,这显然与每个主题不匹配。 那么你可以给我有效或无效的想法来改变焦点的颜色吗? 感谢

1 个答案:

答案 0 :(得分:1)

为什么不使用皮肤甚至自定义绘图?还记得

  • 检查getVisualState()== VISUAL_STATE_FOCUS
  • 记得覆盖并抑制applyTheme方法

alt text http://img515.imageshack.us/img515/4286/checkfocus.jpg

class FCheckBoxField extends CheckboxField {

    public FCheckBoxField(String label, boolean value) {
        super(label, value);
    }

    protected void paint(Graphics g) {
        if (getVisualState() == VISUAL_STATE_FOCUS) {
            int c = g.getColor();
            g.setColor(Color.CRIMSON);
            g.fillRect(0, 0, getWidth(), getHeight());
            g.setColor(c);
        }
        super.paint(g);
    }

    protected void applyTheme(Graphics arg0, boolean arg1) {
    }
}