我有一个嵌套在TableLayoutManager行内的LabelField。我希望该行是特定的高度(与其位图背景相同的高度)。为了实现这一点,我更改了嵌套LabelField的layout()方法:
LabelField lblHours = new LabelField(hours,
Color.BLACK, Manager.FIELD_VCENTER) {
protected void layout(int width, int height) {
super.layout(width, 40 //height of the bitmap);
setExtent(width, 40 //height of the bitmap);
}
};
这成功增加了TableLayoutManager的行大小。但是,一旦执行此操作,LabelField将不再在行内垂直居中。有什么建议吗?
谢谢!
最佳答案
上面的答案有效,只是确保您为上述内容输入了两个语句,如以下示例所示。
LabelField importanceLabel = new LabelField("Importance: ",LabelField.FIELD_VCENTER | LabelField.FIELD_RIGHT) {
public void paint(Graphics g) {
g.setColor(0x145085);
super.paint(g);
}
protected void layout(int width, int height) {
super.layout(Math.min(width, this.getFont().getAdvance(this.getText())), 26); //height of the bitmap);
setExtent(Math.min(width, this.getFont().getAdvance(this.getText())), 26); //height of the bitmap);
}
};
这将是相同的答复..谢谢你们..的讨论。它帮助了我。
关于java - BlackBerry将LabelField垂直居中放置自定义高度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6127907/