Следующая команда работает нормально и выдает текстовое поле, в которое я могу ввести.Верхняя левая программная клавиша на эмуляторе телефона позволяет мне изменять тип ввода (с qwerty на числовой и т. Д.), Однако каждый раз, когда я нажимаю эту верхнюю левую кнопку, я получаю исключение NullPointerException.Похоже, это происходит с любым Midlet, работающим с этой функциональной клавишей (назначение команды с более высоким приоритетом для функциональной клавиши сдвигает отображение типа ввода в верхнем правом углу, где оно работает отлично!)
Янемного сбит с толку, есть ли что-то очевидное, что я здесь упускаю (скорее всего) или есть ошибка / функция где-то, что я полностью отсутствует?Я использую Netbeans 6.9.1 в Windows XP.
public class Midlet extends MIDlet {
private Display display;
public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(new Form("") {
{
append(new TextField("Label", "", 10, TextField.ANY));
}
});
}
public void pauseApp() {
}
public void destroyApp(boolean destroy) {
}
}
РЕДАКТИРОВАТЬ: Ой, забыл трассировку стека:
TRACE: <at java.lang.NullPointerException: 0>, Exception caught in Display class
java.lang.NullPointerException: 0
at javax.microedition.lcdui.Display$ChameleonTunnel.callItemListener(), bci=57
at com.sun.midp.chameleon.layers.SoftButtonLayer.processCommand(), bci=57
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:662)