如何将焦点吸引到VerticalFieldManager
黑莓中。
我已经尝试过了,但没有工作。
VerticalFieldManager vv=new VerticalFieldManager(Manager.focusFOCUSABLE);
如何将焦点吸引到VerticalFieldManager
黑莓中。
我已经尝试过了,但没有工作。
VerticalFieldManager vv=new VerticalFieldManager(Manager.focusFOCUSABLE);
您可以尝试调用Field.setFocus
它,但由于经理是一个容器,我不确定您是否会看到它的“焦点”。
如果它不起作用,您也可以尝试覆盖该方法并在返回 truepaint
时绘制自己的自定义焦点。isFocus
试试这个 -
VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE);
然后将项目添加到 vv。
这是这样做的方法:
VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE) {
protected void paintBackground(Graphics g) {
int prevColor = g.getColor();
int bgColor;
if (isFocus()) {
bgColor = Color.Blue;
} else {
bgColor = Color.White;
}
g.setColor(bgColor);
g.fillRoundRect(0, 0, getPreferredWidth(), getPreferredHeight(), 0, 0);
g.setColor(prevColor);
}
public void onFocus(int direction) {
super.onFocus(direction);
this.invalidate();
}
public void onUnfocus() {
super.onUnfocus();
this.invalidate();
}
};
_focusAnchor = new NullField(FOCUSABLE);
add(_focusAnchor);