Domanda

Voglio impostare un separatore automatico per il mio editext. L'ho fatto con un textwatcher. In

public void afterTextChanged(Editable s) 
.

Salva il valore corrente del mio editext, formattalo con

@Override
        public void afterTextChanged(Editable s) {

            InputField.this.removeTextChangedListener(this);
            double tmp = getDoubleValue();

            s.clear();
s.append(DecimalFormat.getInstance(Locale.GERMAN).format(tmp));

            InputField.this.addTextChangedListener(this);
        }

    });
.

Ma la tastiera dalla mia scheda Galaxy non si preoccupa se svuoto il modificabile. Mantiene l'ingresso corrente e riempie l'editext con il numero completo. Un breve esempio:

I Digitare "1", la tastiera inserisce "1", l'editext mostra "1".
Digioso "2", la tastiera inserisce "12", l'editext mostra "112"
Digioso "3", la tastiera inserisce "123", gli editext mostrano "112.123" Premo il pulsante Elimina, la tastiera inserisce "12", EDITText mostra "11.212.312" Preme di nuovo il tasto Elimina, la tastiera inserisce "1", EDITText mostra "112.123.121"

La mia domanda è: Come posso disabilitare questa tastieraFeature? Inserisci Descrizione dell'immagine qui

o come posso pulire questa tastiera "cache"?

Se utilizzo InputType "NumberDecimale", funziona ma non riesco a utilizzare punti come mille separatori (ma è necessario in Germania), perché saranno interpretati come punto decimale e può esserci solo uno.

È stato utile?

Soluzione

Non sono sicuro se riesci a pulire la cache, ma in merito a disabilitare la barra di suggerimento .. Puoi farlo in modo programmatico:

YourEditText.setInputType(YourEditText.getInputType()
| EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS
| EditorInfo.TYPE_TEXT_VARIATION_FILTER);
.

o è possibile disattivare il tag XML EditText. Puoi impostare:

<EditText>
   android:inputType="textFilter
   .... />
.

È possibile utilizzare questo valore, ma sfortunatamente non funziona in tutti i dispositivi specialmente HTC

android:inputType="textNoSuggestions"
.

Modifica

A volte non funziona perché è all'altezza dell'attuazione della tastiera per fare la cosa giusta comprese le bandiere .. Tuttavia, tutto ha una soluzione alternativa puoi provare il seguente codice in XML:

android:inputType="textNoSuggestions|textVisiblePassword"
.

o in java:

yourEditText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
.

e dammi un feedback se ha funzionato o no ..

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top