📄 phonebookmidlet.java
字号:
package com.j2medev.chapter3.phonebook;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import com.j2medev.chapter3.phonebook.ui.*;
public class PhoneBookMIDlet extends MIDlet implements Controller {
private Display display;
// model:
private Model model;
// view:
private AddEntryUI addEntryUI;
private DetailUI detailUI;
private EditEntryUI editEntryUI;
private ListEntryUI listEntryUI;
public PhoneBookMIDlet() {
super();
display = Display.getDisplay(this);
model = new Model();
// init view:
addEntryUI = new AddEntryUI(this);
detailUI = new DetailUI(this);
editEntryUI = new EditEntryUI(this);
listEntryUI = new ListEntryUI(this);
}
public void handleCommand(int command, Object arg) {
switch(command) {
case Controller.SHOW_LIST_ENTRY:
show(listEntryUI);
break;
case Controller.SHOW_ADD_ENTRY:
addEntryUI.clear();
show(addEntryUI);
break;
case Controller.DO_ADD_ENTRY:
model.addEntry((Entry)arg);
refresh();
show("Add entry OK.", listEntryUI);
break;
case Controller.SHOW_EDIT_ENTRY:
editEntryUI.load((Entry)arg);
show(editEntryUI);
break;
case Controller.DO_UPDATE_ENTRY:
model.updateEntry((Entry)arg);
refresh();
show("Entry updated.", listEntryUI);
break;
case Controller.SHOW_DETAIL_ENTRY:
detailUI.load((Entry)arg);
show(detailUI);
break;
case Controller.DO_REMOVE_ENTRY:
model.removeEntry((Entry)arg);
refresh();
show("Removed entry OK.", listEntryUI);
break;
case Controller.APP_EXIT:
destroyApp(true);
notifyDestroyed();
break;
}
}
private void refresh() {
Entry[] all = model.getAll();
listEntryUI.load(all);
}
private void show(String msg, Displayable d) {
Alert alert = new Alert("Message", msg, null, AlertType.INFO);
alert.setTimeout(Alert.FOREVER);
display.setCurrent(alert, d);
}
private void show(Displayable d) {
display.setCurrent(d);
}
protected void startApp() {
Entry[] all = model.getAll();
listEntryUI.load(all);
handleCommand(Controller.SHOW_LIST_ENTRY, null);
}
protected void pauseApp() {}
protected void destroyApp(boolean unconditional) {}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -