0

我正在使用以下代码将图像添加到按钮。但是,我从窗口视图中得到了一些按钮!我应该添加什么以使它们适合视图窗口?!

PLUS:我希望他们在中心,垂直和水平。假设我有 15 个按钮,我想要每行 3 个。在屏幕中央??

提前致谢

public class BitmapButtonField extends ButtonField {
    private Bitmap bitmap;
    private Bitmap bitmapHighlight;
    private boolean highlighted = false;

    public BitmapButtonField(Bitmap bitmap, Bitmap bitmapHighlight) {
        this(bitmap, bitmapHighlight, ButtonField.CONSUME_CLICK|ButtonField.FIELD_HCENTER|ButtonField.FIELD_VCENTER);
    }

    public BitmapButtonField(Bitmap bitmap, Bitmap bitmapHighlight, long style) {
        super(style);
        this.bitmap = bitmap;
        this.bitmapHighlight = bitmapHighlight;
    }

    protected void layout(int width, int height) {
            setExtent(getPreferredWidth(), getPreferredHeight());
    }

    public int getPreferredWidth() {
            return bitmap.getWidth();
    }

    public int getPreferredHeight() {
            return bitmap.getHeight();
    }

    protected void paint(Graphics graphics) {
            super.paint(graphics);
            int width = bitmap.getWidth();
            int height = bitmap.getHeight();
            Bitmap b = bitmap;
            if (highlighted)
                b = bitmapHighlight;
            graphics.drawBitmap(0, 0, width, height, b, 0, 0);
    }
}
4

1 回答 1

0

你的领域没有任何问题。很可能您正在使用HorizontalFieldManager它具有无限宽度并将字段放置在屏幕边界之外。您可以使用FlowFieldManager来更改此行为。

于 2012-01-01T16:59:10.990 回答