Wer dachte J2ME laufe auf jedem Handy voellig gleich, der irrt. So sind z.B. viele Key Codes (insbes. der speziellen) pro Geraet bzw. Modellreihe verschieden. GePAINTed wird auch nicht gleich, bei der "RIM Kapselung" die beim Blackberry angewendet wird, muss man etwas nachhelfen. Ein CommandListener z.B. fuer ein simples EXIT ist hingegen noch ertraeglich. Nicht aber dass es beim J2ME String nicht einmal eine split bzw. explode Funktion gibt. Ein paar Infos zu den o.g. Themen hier:
Die Canvas Keycodes zu jeder Handy Familie findet man auf :
http://www.j2meforums.com/wiki/index.php/Canvas_Keycodes
Besondere Beachtung sollte man ggf. LSK und RSK schenken.
Wie man einen CommandListener implementiert:
CODE:
public class MyMidlet extends MIDlet implements CommandListener {
...
private static final Command exitCommand = new Command("Exit", Command.EXIT, 1);
public void startApp() throws MIDletStateChangeException {
...
MyMainObject.addCommand(exitCommand);
MyMainObject.setCommandListener(this);
}
public void commandAction(Command c, Displayable s) {
if (c == exitCommand) {
try {
destroyApp(false);
}
catch (MIDletStateChangeException e) {
e.printStackTrace();
}
notifyDestroyed();
}
...
}