LWUIT 开发教程(15):Tickering

Label 及其子类(如Button)支持Ticker (跑马灯效果),一般来说,如果在Lable 中显示过长的文字(宽度大于屏幕),LWUIT将文字截断并在文字后面显示三个点”…”。而对于可以支持用户事件的控件(如Button, Checkbox) 获取焦点时,则长串文字可以一跑马灯的形式滚动显示文字。

也可以通过代码startTicker, 和stopTicker来控制文字的滚动和停止,如果需要关闭文字滚动,可以通过setTickerEnabled(false) ,此外,如果不想使用三个点”…” 来表示过长的文字,可以使用setEndsWith3Points(false)。startTicker 可以指定位置滚动的方向,从左到右或是从右到左。

本例使用Label 来显示Tickering 效果。

Form mainForm = new Form("Tickering Demo");
mainForm.setLayout(new BoxLayout(BoxLayout.Y_AXIS));
Label label1=new Label("Text Only Label, "
 + "and I am a really long long text");
label1.startTicker(100, true);
mainForm.addComponent(label1);
try {
 Image icon = Image.createImage("/navigator.png");
 Label label2=new Label(icon);
 mainForm.addComponent(label2);


 Label label3=new Label(icon);
 label3.setText("Image and Text Label,"
 + " and I am a really long long text");
 mainForm.addComponent(label3);
 label3.startTicker(300, false);
 Label label4=new Label(icon);
 label4.setText("Image and Text Label at Bottom, "
 + "and I am a really long long text");
 label4.setTextPosition(Component.BOTTOM);
 label4.startTicker(100, true);
 mainForm.addComponent(label4);
} catch (IOException ex) {
 ex.printStackTrace();
}