Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
565 views
in Technique[技术] by (71.8m points)

user interface - Setting background and font colors for RichTextField, TextField

How do we set the background and font colors in a RichTextField? I tried to override the paint() method in addition to what has been described here, but when I scroll down in, the background gets erased or reset to a white background

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

In RIM 4.6 and greater you can use Background:

class ExRichTextField extends RichTextField {

    int mTextColor;

    public ExRichTextField(String text, int bgColor, int textColor) {
        super(text);
        mTextColor = textColor;
        Background background = BackgroundFactory
                .createSolidBackground(bgColor);
        setBackground(background);
    }

    protected void paint(Graphics graphics) {
        graphics.setColor(mTextColor);
        super.paint(graphics);
    }
}

For RIM 4.5 and lower use paint event to draw background youreself:

class ExRichTextField extends RichTextField {

    int mTextColor;
    int mBgColor;

    public ExRichTextField(String text, int bgColor, int textColor) {
        super(text);
        mTextColor = textColor;
        mBgColor = bgColor;
    }

    protected void paint(Graphics graphics) {
        graphics.clear();
        graphics.setColor(mBgColor);
        graphics.fillRect(0, 0, getWidth(), getHeight());
        graphics.setColor(mTextColor);
        super.paint(graphics);
    }
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...