KeyCode em diferentes aparelhos

6 respostas
j0nny

Galera, me deparei com essa situação.
Fazendo umas classes de componentes em Canvas, usando keyCode para identificar a tecla e realizar uma ação, em alguns aparelhos as teclas simplesmente não funcionam, então testei o código das teclas e vi que de acordo com cada aparelho, esse keyCode pode mudar.
Alguém já resolveu uma situação parecida com essa?

6 Respostas

deivid

Muda sim, principalmente alguns Motorola como V3, V360, K1 … e alguns LG velhos MG225.

No v3 se não me engano as softkeys são -21 e -22.

j0nny

deivid:
Muda sim, principalmente alguns Motorola como V3, V360, K1 … e alguns LG velhos MG225.

No v3 se não me engano as softkeys são -21 e -22.

Sim, foi isso que falei, foi o teste que fiz, mas queria saber de alguém que já fez os componentes personalizados, como resolveram isso?!

deivid

Pra resolver este problema eu sempre faço uma build separada para um destes celulares.

Usa ifdef no seu código para resolver este problema, é simples.
//#ifdef V3

//...

//#else

//...

//#endif
Mas tem alternativa mais bonita pra resolver isso, fazendo uma Interface pra cada Aparelho. Por exemplo a interface
interface V3 extends Device
Sendo que na interface Device e nas suas filhas tem os valores especificos de softkey, teclas e outros detalhes de cada device.
j0nny
deivid:
Pra resolver este problema eu sempre faço uma build separada para um destes celulares. Usa ifdef no seu código para resolver este problema, é simples.
//#ifdef V3

//...

//#else

//...

//#endif
Mas tem alternativa mais bonita pra resolver isso, fazendo uma Interface pra cada Aparelho. Por exemplo a interface
interface V3 extends Device
Sendo que na interface Device e nas suas filhas tem os valores especificos de softkey, teclas e outros detalhes de cada device.

Cara, pra mim isso é inviável...
não posso me prender assim =/

Obs.:
Seus condicionais estão errados ^^
Vc vem do Delphi?

deivid
j0nny:
deivid:
Pra resolver este problema eu sempre faço uma build separada para um destes celulares. Usa ifdef no seu código para resolver este problema, é simples.
//#ifdef V3


//...

//#else

//...

//#endif
Mas tem alternativa mais bonita pra resolver isso, fazendo uma Interface pra cada Aparelho. Por exemplo a interface
interface V3 extends Device
Sendo que na interface Device e nas suas filhas tem os valores especificos de softkey, teclas e outros detalhes de cada device.

Cara, pra mim isso é inviável...
não posso me prender assim =/

Obs.:
Seus condicionais estão errados ^^
Vc vem do Delphi?

Não está errado :D , isso é pre-processamento em J2ME.

http://eclipseme.org/docs/preprocessing.html

http://www.devx.com/wireless/Article/32622

j0nny
deivid:
j0nny:
deivid:
Pra resolver este problema eu sempre faço uma build separada para um destes celulares. Usa ifdef no seu código para resolver este problema, é simples.
//#ifdef V3


//...

//#else

//...

//#endif
Mas tem alternativa mais bonita pra resolver isso, fazendo uma Interface pra cada Aparelho. Por exemplo a interface
interface V3 extends Device
Sendo que na interface Device e nas suas filhas tem os valores especificos de softkey, teclas e outros detalhes de cada device.

Cara, pra mim isso é inviável...
não posso me prender assim =/

Obs.:
Seus condicionais estão errados ^^
Vc vem do Delphi?

Não está errado :D , isso é pre-processamento em J2ME.

http://eclipseme.org/docs/preprocessing.html

http://www.devx.com/wireless/Article/32622

Ah entendi, imaginei que fosse otra coisa ^^
Vlw pelos links :D

Criado 27 de maio de 2010
Ultima resposta 28 de mai. de 2010
Respostas 6
Participantes 2