Cela a été demandé ailleurs en ligne en vain. Existe-t-il un moyen dans Android pour afficher le clavier numérique souple lors de la mise au point sur un EditText
, tout en permettant la saisie de texte?
J'aimerais laisser l'utilisateur entrer des quantités (par exemple, "1 kg", "2 L"), il suffit donc de définir inputType="number"
ne fonctionnera pas.
Ajoutez la ligne de code suivante, et elle fera l'affaire :)
editText.setRawInputType(Configuration.KEYBOARD_QWERTY);
Cela affichera d'abord le pavé numérique, mais vous permettra également de saisir du texte libre.
Plus d'informations ici .
Cela peut dépendre de l'appareil, mais avez-vous essayé:
Android:inputType="phone"
dans le xml de EditText, cela vous donne le clavier numérique, mais vous pouvez toujours passer aux lettres si vous le souhaitez. (Au moins sur mon Nexus One).
Notez que: setRawInputType (InputType.TYPE_CLASS_NUMBER);
a l'effet souhaité sur certains appareils mais pas sur d'autres ...
Sur htc, cela fonctionne bien, mais sur Galaxy Tab II, vous obtenez uniquement le clavier numérique et aucun moyen de revenir à l'alpha.
écrire le code en XML, Android: numeric = "integer" Android: inputType = "phone" Android: digits = "1234567890"
Il semble que la question sous-jacente à laquelle vous avez à faire est: comment puis-je permettre à l'utilisateur de saisir des quantités?
Une réponse appropriée est: avec une entrée numérique, associée à une certaine forme de sélection de catégorie pour l'unité. par exemple. radio, liste déroulante ou spinner. Ceci est probablement plus facile à utiliser et vous évite également le mal de tête d'avoir à valider votre saisie à chaque fois.
Vous pouvez également avoir des cojones de fer et écrire un clavier logiciel personnalisé.