黑莓 - 如何占用带图像的完整按钮

时间:2010-12-22 13:13:05

标签: image blackberry java-me button

我已经编写了BlackBerry代码来将图像添加到ButtonField。我希望整个按钮被图像占用,但图像不会完全显示在ButtonField上。 按钮的顶部,左侧和右侧有很多边距。我尝试使用cellpadding但它没有用。

如何减小ButtonField的宽度和高度,使其与原始图像尺寸41 x 41相匹配?

1 个答案:

答案 0 :(得分:5)

不是将图像添加到按钮,而是通过重写isFocusable(),navigationClick(),trackwheelClick()和keyChar()来扩展图像类并将其转换为按钮。这是代码:

public class ImageButtonField extends BitmapField
{
    public ImageButtonField(Bitmap image) {
        super(image);
    }

    public boolean isFocusable() {
        return true;
    }

    protected boolean navigationClick(int status, int time) {
        fieldChangeNotify(0);
        return true;
    }

    protected boolean trackwheelClick(int status, int time) {
        fieldChangeNotify(0);
        return true;
    }

    protected boolean keyChar(char character, int status, int time) {
        if(Characters.ENTER == character || Characters.SPACE == character) {
            fieldChangeNotify(0);
            return true;
        }
        return super.keyChar(character, status, time);
    }
}