如何将焦点绘制到BlackBerry中的VerticalFieldManager
。
我试过这个但没有用。
VerticalFieldManager vv=new VerticalFieldManager(Manager.focusFOCUSABLE);
答案 0 :(得分:1)
您可以尝试在其上调用Field.setFocus
,但由于经理是一个容器,我不确定您是否会看到“重点”。
如果它不起作用,您可以尝试覆盖paint
方法,并在isFocus
返回true时绘制自己的自定义焦点。
答案 1 :(得分:0)
试试这个 -
VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE);
然后将项目添加到vv。
答案 2 :(得分:0)
这是做到这一点的方法:
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);