Mostra solo i tasti numbersci sulla tastiera morbida in Android?

Sulla tastiera morbida in Android è ansible impostare la tastiera soft per visualizzare i numbers anziché la tastiera usando android:inputType="numberDecimal" . Tuttavia, cosa posso fare se voglio solo visualizzare la row numero massimo 1 2 3 4 5 6 7 8 9 0 e non le seguenti righe che iniziano con @ # $ % ... ?

Thanx per ascoltare!

  • Progetto Android Studio con sapori, directory di origini non mostrato in colore blu
  • Cambiare ImageView sul clic del button
  • requestFeature () deve essere chiamato prima di aggiungere l'errore di contenuto su super.onCreate
  • Attività Android - NullPointerException ("Imansible istanzia l'attività ComponentInfo")?
  • IncompatibleClassChangeError dopo l'aggiornamento a Strumenti di sviluppo Android 25.1.6 GCM / FCM
  • Android Parcelable e Serializable
  • 6 Solutions collect form web for “Mostra solo i tasti numbersci sulla tastiera morbida in Android?”

    Devi aggiungere questa row solo al tuo codice:

     input.setRawInputType(Configuration.KEYBOARD_12KEY); 

    ciò mostrerà solo la tastiera numbersca.

     android:inputType="phone" android:digits="1234567890" 

    è un'opzione

    Il numero di telefono è la cosa più vicina che ho trovato (impostare inputType="phone" sul tuo EditText ).

    Ultimamente l'ho esaminata, Android non ha avuto buone opzioni per questo. Ho finito per scrivere la mia versione di un'interface utente soft-like.

    Appena inviato una risposta qui, ma ri-pubblicare per semplicità:

    Sembra Android ha aggiunto la funzionalità che stavamo cercando. Questo è il xml che uso per la semplice introduzione numbersca di EditText:

      android:inputType="numberPassword" android:digits="0123456789" android:singleLine="true" android:ems="4" android:textColor="@android:color/black" android:gravity="center" 

    Avevo implementato questo per android in Xamarin. Quindi, il mio codice è in C #. Ma l'amministratore rimane lo stesso. È ansible impostare l'attributo di edittext in android:inputType="numberPassword" .

    Quindi, all'interno del codice, allegate il metodo di trasformazione personalizzato alla visualizzazione edittext.

     holder.edtxtQty.TransformationMethod = new HiddenPasswordTransformationMethod(); private class HiddenPasswordTransformationMethod : global::Android.Text.Method.PasswordTransformationMethod { public override Java.Lang.ICharSequence GetTransformationFormatted(Java.Lang.ICharSequence source, View view) { return new PasswordCharSequence(source); } } private class PasswordCharSequence : Java.Lang.Object, Java.Lang.ICharSequence { private char DOT = '\u2022'; private Java.Lang.ICharSequence _source; public PasswordCharSequence(Java.Lang.ICharSequence source) { _source = source; } public char CharAt(int index) { return _source.CharAt(index); } public int Length() { return _source.Length(); } public Java.Lang.ICharSequence SubSequenceFormatted(int start, int end) { return _source.SubSequenceFormatted(start, end); // Return default } public IEnumerator<char> GetEnumerator() { return _source.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return _source.GetEnumerator(); } } 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.