0
下面的類擴展了labelfield,但是當我顯示大量文本時,它不會換行到新行。文本僅在屏幕上顯示。當我使用LabelField時,文本會打包。我是否需要更新繪畫方法?Labelfield文本不包裝
感謝
import net.rim.device.api.ui.DrawStyle;
import net.rim.device.api.ui.Font;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.component.LabelField;
public class FCLabelField extends LabelField {
private Object text;
private Font font;
private int colour;
private long style;
public FCLabelField(Object text, long style , Font font, int colour) {
super(text, style);
this.text = text;
this.font = font;
this.colour = colour;
}
protected void paint(Graphics graphics) {
graphics.setColor(colour);
graphics.setFont(font);
graphics.drawText(text.toString(), 0, 0, DrawStyle.HCENTER, getContentWidth());
}
}
這工作 -
import net.rim.device.api.ui.DrawStyle;
import net.rim.device.api.ui.Font;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.component.LabelField;
public class FCLabelField extends LabelField {
private Object text;
private Font font;
private int colour;
private long style;
public FCLabelField(Object text, long style , Font font, int colour) {
super(text, style);
this.text = text;
this.colour = colour;
super.setFont(font);
}
protected void paint(Graphics graphics) {
graphics.setColor(this.colour);
super.paint(graphics);
}
}
嗯,我想知道,不是自己在做'graphics.drawText',你可以運行setColor和setFont語句,然後調用'super.paint(graphics)'?這應該解決你的問題。 –
@Scott W你不妨將你的評論推薦給答案。 –
試過了,行換行但字體沒有更新。所以它修復了錯誤,但似乎造成了另一個錯誤。 –