如何在运行时使黑莓BitmapField
不可聚焦?我希望根据特定事件使其变暗。
答案 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_FOCUSABLE
或Field.FOCUSABLE
传递给构造函数来创建不可聚焦的字段,但是一旦实例化,您就无法更改它的可聚焦状态。即使你可以,那么该字段也不会显得“暗淡”或“禁用”,但只需将焦点转移到其后的下一个可聚焦字段即可。一个例子是不可聚焦的标签字段。
更新:这适用于内置字段,如EditFields,Checkbox,RadioButtons等。在您的情况下,这不起作用,因为BitmapField不是“可编辑的”,它是一个只读字段。你可以像@adwiv答案节目那样制作一个技巧,但你必须自己实现“禁用”或灰色叠加。