2011-06-21 32 views
3

我必须显示一个字符串,它可以或不能够大到不能放在所有设备的一行中,我希望labelfield控件能够在原始字符后面的“新行”中自动显示剩余文本,我的意思是... auomatic carret return如果字符串不能显示在一行中,我尝试过的所有移动操作系统都是这样做的,但我无法让BB OS正常工作,只要它喜欢它就会截断我的字符串,这非常烦人。Multiline labelfield

谢谢你做这个

+0

这是一个网络应用程序,或一个Java应用程序?通常,关于堆栈溢出的问题包括与问题相关的代码。 –

+0

java,以及我可以添加代码,但我认为这不是一个特别的问题,我只是想基本上:Labelfield myLabel = new Labelfield(LARGE_STRING); this.add(myLabel);在屏幕上跨越多行,因此可以查看所有LARGE_STRING,因为目前它所做的只是在单行上显示标签,并且如果该字符串不在该唯一行中,那么它只会在该行剪切字符串,剩下的字符只是没有显示。这里的问题是所有设备的宽度都不同,所以我不能手动为每一行字符串做一个labfetield并手动分发LARGE_STRING –

回答

8

一种方法是把你的Horizo​​ntalFieldManager包含VerticalFieldManager内将labelField。

E.g.

LabelField labelField = new LabelField("This is a very long sentance that I have written to show that the text will wrap around when it gets to the edge of the field."); 
VerticalFieldManager vfm = new VerticalFieldManager(); 
HorizontalFieldManager hfm = new HorizontalFieldManager(); 
hfm.add(labelField); 
vfm.add(hfm); 

add(vfm); 
+0

非常感谢,正是我期待的:D,标记为answwer,注意潜在的人会想要这样做,为此行为添加另一个元素,我所做的是为每个控制器创建一个hfm,并将其全部转换为vfm。 –