Comment puis-je afficher le clavier numérique sur un EditText sur android?

je veux simplement basculer sur le mode nombre pad dès qu'un certain EditText a le focus.

129
demandé sur Lucifer 2009-07-13 17:55:52

12 réponses

vous pouvez configurer un inputType pour votre EditText :

<EditText android:inputType="number" ... />
236
répondu Josef Pfleger 2009-07-13 18:46:06

pour le faire dans un fichier Java:

EditText input = new EditText(this);
input.setInputType(InputType.TYPE_CLASS_NUMBER);
111
répondu Dominic 2010-10-06 06:52:25

j'ai trouvé cette implémentation utile, montre un meilleur clavier et limite les caractères d'entrée.

<EditText
    android:inputType="phone"
    android:digits="1234567890"
    ...
/>

de plus, vous pouvez utiliser android:maxLength pour limiter le nombre maximum de numéros.

pour ce faire par programmation:

editText.setInputType(InputType.TYPE_CLASS_PHONE);

KeyListener keyListener = DigitsKeyListener.getInstance("1234567890");
editText.setKeyListener(keyListener);
46
répondu Matthijs 2016-01-04 11:56:18
<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    ...
    android:inputType="number|phone"/> 

affichera le pavé numérique comme composeur.

17
répondu Nguyen Minh Binh 2013-07-29 01:56:28

Vous pouvez le faire de 2 façons

  1. Runtime set

    EditText input = new EditText(this);
    input.setInputType(InputType.TYPE_CLASS_NUMBER);
    
  2. utilisant XML

    <EditText
        ...
        android:inputType="number" />
    
10
répondu Nirav Ranpara 2014-11-17 14:40:18

si vous avez besoin du nombre fractionnaire, alors c'est la réponse pour vous:

android:inputType="numberDecimal"
5
répondu macio.Jun 2014-10-10 01:24:23

si vous utilisez votre texte édité dans la boîte de dialogue ou si vous créez dynamiquement et que vous ne pouvez pas le définir à partir du xml, alors cet exemple vous aidera à définir ce type de tableau de touches pendant que vous utilisez le texte édition dynamique etc

myEditTxt.setInputType(InputType.TYPE_CLASS_NUMBER);

où myEditTxt est l'objet dynamic EDIT TEXT (nom)

3
répondu Pir Fahim Shah 2012-12-04 10:36:14

autres types d'entrées et détails trouvés ici sur le site google

2
répondu sai Gorantla 2014-03-20 14:38:46
editText.setRawInputType(InputType.TYPE_CLASS_NUMBER);
1
répondu Aliya 2013-04-21 20:16:59

utilisez le code ci-dessous dans le fichier java

editText.setRawInputType (Configuration.KEYBOARD_QWERTY);

1
répondu Darshuu 2017-09-21 05:25:28

définissez ceci dans votre code xml

android:inputType="number"
0
répondu fulgen 2016-06-27 08:35:05
EditText number1 = (EditText) layout.findViewById(R.id.edittext); 
number1.setInputType(InputType.TYPE_CLASS_NUMBER);
0
répondu ShivBuyya 2017-12-21 10:26:20