# Problem mit den Softkeys



## MiMij (7. Jan 2008)

Wie kann ich es am schoensten loesen die Softkeys abzuhandeln?
Das Problem ist, das ich eigentlich das geloest hatte mit GameAction und wenn es keine Gameaction gibt bei einem KeyPressed, das er dann nach dem keyCode schaut, halt -6 fuer LSK und -7 fuer RSK
Nun gibt das Samsung zb aber bei nem druck auf die Softkeys immer Fire zurueck. Also kann ich nun keine Gameaction mehr verwenden  Nun gibt es noch das problem das einige Handys den keycode der softkeys vertauscht haben. Nur das weiss ich ja net vorher. 

SO siehts bisher aus...


```
public void keyPressed (int keyCode) {
		viewItem = (IViewItem) chooseLines.elementAt(currentChoosedNumber);
		switch (keyCode) {
			case -4:
			case -2: // line down
				// irgendwas
				break;
			case -3:
			case -1: // line up
				// was anderes
				break;
			case -5: // fire
				//fuer aktion aus
				break;
			case - 6: // softkey left
				// mach hier was
				break;
			default:
				super.keyPressed(keyCode);
		}
```

Wobei im super.keypressed auch -7 abgehandelt wird. 

Nur wie loes ich nun das Softtkey problem?![/code]


----------



## Backwardsman (7. Jan 2008)

tja, das softkeys problem ist leider ungelöst. im prinzip musst du davon ausgehen, dass jedes gerät andere keycodes zurück gibt!

eine möglcihkeit, die viele verfolgen, ist es, unterschiedliche varianten des midlets zum download bereit zu stellen. mit ant kann man das recht geschickt machen, dabei legst du für verschiedene geräte die codes fest. beim compilieren, werden dann diese codes mit eingebaut und und automatisch verschiedene midlet-varianten erstellt.

das lohnt sich allerdings nur, wenn du wirklich das ziel hast, jede menge geräte zu erreichen.

wenn du nicht gerade kommerziell arbeitest solltest du dir mal j2me-polish anschauen, da wird das mit den keycodes auch so gemacht, allerdings schon etwas vorbereitet.


----------



## MiMij (7. Jan 2008)

@backwardsman
Danke, also ich arbeite momentan im Praktikum. Eigentlich werden alle Applikationen hier mit Polish gemacht ^^ Aber meine sollte das net, weil polisc doch noch einige Fehler hat. Oder so kp 

Und ja es soll natuerlich viele Leute erreichen. Also werd ich einfach weiterhin das so bauen, das es fuer Nokia's und Sony Ericsson funktioniert. Wenn es da keine bessere Loesung gibt.


Ich finde ja man sollte das einfach verpflichten das einheitlich zu machen ^^ Als ob ich net schon genug Probleme haette mit dem dummen Alpha wert, und das der Prozessor von einigen Handys einfach zu lahm ist, fuer ne Scrollfunktion von Bildern


----------



## Backwardsman (7. Jan 2008)

ja da stimm ich dir zu, die j2me-spezifikation ist einfach zu lasch! nicht du bei den key codes gibts es zig probleme... auch die sache mit den schriftarten/größen macht jeder wie er will... auch wenn fett, kursiv und so gefordert ist, setzt kaum ein hersteller alle kombinationen wirklich um, was dazu führt, dann ein midelt auf jedem gerät anders aussieht und teilweise nicht mehr das erfüllt, was es eigentlich soll. das gleiche gilt für den fullscreen-modus, optionale apis und zig andere sachen.

eigentlich ist es eine frechheit, dass j2me sich plattforum bzw. geräteunabhängig nennen darf! ;-)


----------



## MiMij (7. Jan 2008)

Joa hast Recht.

Aber die wollen ja, soweit ich gelesen hab, J2me immer mehr verschwinden lasen und dann soll das komplette Java Packet zur Verfuegung stehen fuer Handys. Das gibt dann noch mehr Chaos ^^


----------

