1. Alert
Alert是一种桌面上的弹出窗口,可以在后台运行。
组成:Title(标题),Body(提示信息),Icon(在提示框右边出现的图标),Progress bar(进度条,一般为Gauge对象)。
示例代码:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class AlertExample extends MIDlet {
Display display = Display.getDisplay(this);
public void startApp() {
// Alert(title, text, icon, AlertType)
Alert alert = new Alert("Info", "This is an alert for informative purposes", null, AlertType.INFO);
display.setCurrent(alert);
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
}
简单说明:程序运行时生成一个Alert对象,然后将其放到主屏幕上。
在使用Alert时需要注意的几点:
1. Aler要么是模态要么是非模态(没明白);
2. 如果Alert的内容需要滚动条,那么它是模态的;
3. 如果AlertType被setType方法修改,着不会影响timeout方法;
4. 如果Alert的内容太多,则内容可以滚动,但icon位置不变。
Alert的几种类型:ERROR,WARNING,INFO,CONFIRMATION,ALARM.
关于在Alert中使用Commond,
List:
List是用户交互的一个组件,使用它的时候,它将占据整个屏幕并且允许用户选择多个或一个选项。
组成:1.组件类型,2选项图标3.字体4.长元素的适配准则
示例代码:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class ExampleList extends MIDlet implements CommandListener {
private List ls;
private Command exit;
public ExampleList() {
//List(label,type,items,Images)
ls = new List("Multiple list", List.MULTIPLE, new String[] {"Choice 1", "Choice 2", "Choice 3", "Choice 4"}, null);
exit = new Command("Exit", Command.EXIT, 1);
ls.addCommand(exit);
ls.setCommandListener(this);
}
public void startApp() {
Display display=Display.getDisplay(this);
display.setCurrent(ls);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command command, Displayable displayable) {
if (command == exit) {
destroyApp(false);
notifyDestroyed();
}
}
}.
代码说明:先声明一个多选的List,在运行函数中调用,同时添加一个退出程序的监听事件。
需要注意的几点:
1.
系统默认使用FACE_SYSTEM
字体;
2.
排版规则:Fit policy来排版,分别是TEXT_WRAP_ON
和 TEXT_WRAP_OFF
,对应文字一行排列还是两行排列,但是每个项最多只能排两行;
3. 影响List排版的因素:List类型,图片大小,是否多行显示