如何使黑莓Bitmap字段无法在运行时聚焦

时间:2013-04-28 14:23:53

标签: blackberry java-me jde bitmapfield

如何在运行时使黑莓BitmapField不可聚焦?我希望根据特定事件使其变暗。

2 个答案:

答案 0 :(得分:1)

扩展BitmapField以覆盖isFocusable()方法,如下所示:

public class FocusableBitmapField extends BitmapField {
    //Default value depending on whether you want it that way.
    private boolean focusable = true;

    public boolean isFocusable() {
        return focusable;
    }

    public boolean setFocusable(boolean focusable) {
        this.focusable = focusable;
    }
}

答案 1 :(得分:1)

大部分时间都有效:

field.setEditable(false);

您还可以通过将样式标志Field.NON_FOCUSABLEField.FOCUSABLE传递给构造函数来创建不可聚焦的字段,但是一旦实例化,您就无法更改它的可聚焦状态。即使你可以,那么该字段也不会显得“暗淡”或“禁用”,但只需将焦点转移到其后的下一个可聚焦字段即可。一个例子是不可聚焦的标签字段。

更新:这适用于内置字段,如EditFields,Checkbox,RadioButtons等。在您的情况下,这不起作用,因为BitmapField不是“可编辑的”,它是一个只读字段。你可以像@adwiv答案节目那样制作一个技巧,但你必须自己实现“禁用”或灰色叠加。