Je veux un clavier avecSEULEMENTchiffres visibles dans une vue EditText. Sans autre personnage.
J'ai testé avec toutes les entrées disponibles et ne fonctionne pas .. J'ai cherché un moyen d'obtenir un clavier uniquement avec des chiffres, mais je n'ai vu que des références à:
Android: inputType = "numberPassword"
Mais je veux des nombres visibles dans EditText .Quelqu'un peut m'aider?
Je veux un clavier comme ça: (numberPassword)
J'ai essayé avec:
Android:digits="0123456789"
Android:inputType="phone"
et
Android:inputType="number"
et apparaît comme ça:
Après plusieurs essais, je l’ai eu! !__. Je règle les valeurs du clavier comme cela par programmation
myEditText.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_VARIATION_PASSWORD);
Ou si vous voulez aller avec la vue XML, c'est comme:
Android: inputType = "numberPassword"
Les deux config vont afficher une puce de mot de passe, et dans la mesure où nous cherchons des nombres à afficher sur le EditText, nous devons créer une classe ClickableSpan personnalisée.
private class NumericKeyBoardTransformationMethod extends PasswordTransformationMethod {
@Override
public CharSequence getTransformation(CharSequence source, View view) {
return source;
}
}
Et enfin, nous devons l'implémenter dans EditText afin d'afficher les caractères tapés.
myEditText.setTransformationMethod(new NumericKeyBoardTransformationMethod());
Voici à quoi ressemble mon clavier
Android:inputType="number"
ou Android:inputType="phone"
. Tu peux garder ça. Vous obtiendrez le clavier contenant des nombres. Pour plus de détails sur les différents types de clavier, vérifiez ceci link .
Je pense que ce n'est possible que si vous créez votre propre clavier logiciel. Ou essayez ce Android:inputType="number|textVisiblePassword
. Mais il montre encore d'autres personnages. De plus, vous pouvez garder Android:digits="0123456789"
pour n'autoriser que les nombres dans votre edittext
. Ou si vous souhaitez toujours utiliser la même chose que dans l'image, essayez de combiner deux ou plusieurs fonctionnalités avec | séparateur et vérifiez votre chance, mais selon mes connaissances, vous devez créer votre propre clavier pour obtenir exactement comme ça ..
<EditText
Android:id="@+id/editText3"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_weight="1"
Android:ems="10"
Android:inputType="number" />
J'ai tout essayé maintenant, essayez celui-là.
edit.setRawInputType(Configuration.KEYBOARD_12KEY);
Je pense que vous avez utilisé d'une manière ou d'une autre le bon moyen d'afficher le numéro uniquement sur le clavier, il est donc préférable d'essayer la ligne donnée avec xml dans votre texte de montage et cela fonctionnera parfaitement.
Android:inputType="number"
En cas de doute, vous pouvez à nouveau me demander d’essayer de régler complètement votre problème . Merci.
Placez les lignes ci-dessous dans votre <EditText>
:
Android:digits="0123456789"
Android:inputType="phone"
En xml edittext
:
Android:id="@+id/text"
Au programme:
EditText text=(EditText) findViewById(R.id.text);
text.setRawInputType(Configuration.KEYBOARDHIDDEN_YES);
Pour le EditText si nous spécifions,
Android:inputType="number"
seuls les nombres peuvent être obtenus. Mais si vous utilisez,
Android:inputType="phone"
avec les chiffres, il peut accepter des caractères spéciaux comme;,/". etc.