Java 如何在lwuit(J2ME)中显示多行文本区域?
我已经用语句创建了一个Java 如何在lwuit(J2ME)中显示多行文本区域?,java,java-me,lwuit,Java,Java Me,Lwuit,我已经用语句创建了一个TextArea quest1Label = new TextArea(); 我正在使用文本区域显示标签。。。。所以我使用下面的函数来设置它的属性 private void setTextAreaProperty(TextArea textArea) { String textStr = textArea.getText(); if (textArea.getStyle().getFont().stringWidth(textStr) > (widt
TextArea
quest1Label = new TextArea();
我正在使用文本区域
显示标签
。。。。所以我使用下面的函数来设置它的属性
private void setTextAreaProperty(TextArea textArea) {
String textStr = textArea.getText();
if (textArea.getStyle().getFont().stringWidth(textStr) > (width - 25)) {
textArea.setSingleLineTextArea(false);
} else {
textArea.setSingleLineTextArea(true);
textArea.setPreferredW(width);
}
textArea.setBorderPainted(false);
textArea.setFocusable(false);
textArea.setStyle(getPreviewStyle());
}
其中width=Display.getInstance().getDisplayWidth()强>
我的问题是,多达两行的标签工作正常,但。。。。如果文本更大,则不会转到第三行。
任何有关这方面的帮助都将不胜感激
提前谢谢,…。您试过了吗?也许默认的行数是2,并且增长不会超过2
注意。您需要像这样使用
TextArea
构造函数新的TextArea(1,20)
,这样可以更有效地“增长”版面
原因主要是历史原因,LWUIT对
Texarea
有一个3列默认值,这允许Texarea
很好地收缩,但在增长时会变差。增长/收缩的复杂性源于这样一个事实:布局可以深度嵌套和滚动,因此可用空间与所需空间的计算变得递归,并且在某些难以检测的点无法解决(无限递归) @Bharath:plz请查看已编辑的代码。。。。