2010-11-06 42 views
0

J'ai remarqué que le texte du Softkeyboard en mode paysage n'affiche pas les mêmes caractères que ceux que je vois dans le champ EditText en mode portrait. J'utilise un keyListener pour le EditText seulement accepter les caractères spéciaux:Les touches de raccourci-texte en mode paysage n'affichent pas tous les caractères de EditText

private class MyKeylistener extends NumberKeyListener { 
    public int getInputType() { 
     return InputType.TYPE_CLASS_NUMBER; 
    } 
    @Override 
    protected char[] getAcceptedChars() { 
     return new char[] {'0','1','2','3','4','5','6','7','8','9',',','-'}; 
    } 
}; 

Quand je tape dans un « » en mode paysage, je ne le vois pas dans le SoftKeyboard texte, mais il apparaît dans le EditText quand Je retourne l'écran en mode portrait. Comment puis-je faire en sorte que le texte de la touche programmable affiche tous les caractères autorisés? Je joins une photo pour montrer ce que je veux dire, le EditText est « 34,37,39 »:

alt text

Répondre

6

J'ai trouvé une réponse :-)

En utilisant cette ligne, vous pouvez simplement cacher la SoftKeyboard texte en mode paysage:

myEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI); 

de cette façon, le EditText est également visible au-dessus du clavier en mode paysage, et tout fonctionne comme prévu. Voir aussi: imeOptions