2011-06-21 14 views
3

すべてのデバイスで1行に収まらない文字列を表示する必要があります。元の文字の後ろに "new line"という文字列を自動的に表示するようにlabelfieldコントロールが必要です...文字列を1行に表示できない場合は、auomatic carretに戻ります。すべてのモバイルOSでこれを試しましたが、BB OSを動作させることはできません。好きなときには文字列を切り捨てるだけです。複数行labelfield

はこれを行うには

+0

これはウェブアプリまたはJavaアプリの場合ですか?通常、スタックオーバーフローに関する質問には、問題のある関連コードが含まれています。 –

+0

java、コードを追加することはできますが、それは特に問題ではないと思います。基本的には次のようにします:Labelfield myLabel = new Labelfield(LARGE_STRING); this.add(myLabel);画面上で複数の行にまたがるように、すべてのLARGE_STRINGを見ることができます。これは、現在行なわれているのは、SINGLE行にラベルを表示することで、文字列がその一意の行に足を入れない場合、残りの文字は表示されません。ここで問題となるのは、すべてのデバイスの幅が異なるため、文字列の各行に対して手動でlabelfieldを作成することはできず、手作業でLARGE_STRINGを配布することができないということです。 –

答えて

8

一つの方法は、VerticalFieldManager内のlabelFieldが含まれているあなたのHorizo​​ntalFieldManagerを入れていただき、ありがとうございます。

など。

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

私は期待していました。この動作に別の要素を追加するにはこれが必要ですが、私がしたことは各コントロールのhfmを作成し、それらをすべてvfmにすることでした。 –