J2ME 애플리케이션에 양식을 추가하고 있지만 메인 화면으로 돌아 가려 할 때 항상 nullpointer 예외가 발생합니다. 이것은 캔버스를 사용할 때 발생하지 않는 것으로 보입니다. 정상적으로 주 메뉴로 돌아갈 수 있습니다. 뭐라 구요? QuickAlarm에서 메인 메뉴로 돌아 간다 QuickAlarmJ2ME 디스플레이 어블을 전환 할 때 nullpointer 예외 발생
의 주요 미들 릿quickAlarm = new QuickAlarm("Set quick alarm",this);
display.setCurrent(quickAlarm);
생성자
public QuickAlarm(String title,HelloMIDlet midlet) {
super(title);
df = new DateField("Alarm time",DateField.TIME);
this.append(df);
this.midlet = midlet;
backCommand = new Command("Back",Command.BACK,0);
saveCommand = new Command("Save",Command.OK,1);
this.addCommand(backCommand);
this.addCommand(saveCommand);
}
에서 양식을 시작
는,
this.midlet.leaveCanvas();
이 주 미들 릿에
public void leaveCanvas() {
display.setCurrent(startOptions);
}
전체 오류가 단순히 설치에 명령 리스너를 잊어
TRACE: <at java.lang.NullPointerException: 0>, Exception caught in Display class
java.lang.NullPointerException: 0
at javax.microedition.lcdui.Display$ChameleonTunnel.callScreenListener(), bci=46
at com.sun.midp.chameleon.layers.SoftButtonLayer.processCommand(), bci=74
at com.sun.midp.chameleon.layers.SoftButtonLayer.soft1(), bci=37
at com.sun.midp.chameleon.layers.SoftButtonLayer.keyInput(), bci=36
at com.sun.midp.chameleon.CWindow.keyInput(), bci=38
at javax.microedition.lcdui.Display$DisplayEventConsumerImpl.handleKeyEvent(), bci=17
at com.sun.midp.lcdui.DisplayEventListener.process(), bci=277
at com.sun.midp.events.EventQueue.run(), bci=179
at java.lang.Thread.run(Thread.java:637)
display.setCurrent (startOptions); * startOptions *는 어디에 설정되어 있습니까? – frayser
메인 미들에 정의되어 있습니다. – Pallinder