2011-06-21 61 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。 –