2013-10-28 23 views
7

Questa è più una domanda "esiste un modo più appropriato" in quanto ho trovato un problema.disattiva "controllo ortografico" su textView

Alcune delle intestazioni della tabella vengono rilevate come errori di ortografia e sottolineate in rosso. Certo, non è quello che mi piacerebbe vedere. Ho trovato che usando

android:inputType="textNoSuggestions" 

disabilita i segni di spell check. Trovo strano (bug?) Che questo è necessario in quanto lo stato docs:

InputType: il tipo di dati che vengono collocato in un campo di testo, usato per aiutare un metodo di input decidere come consentire all'utente di inserire testo.

e non vi è alcun input associato solo a textView. Quindi questo è l'unico/più appropriato modo di evitare il controllo ortografico e inoltre, è un bug che sta controllando i campi non di input?

UPDATE: per ogni richiesta è XML di esempio

<TextView 
     android:text="ID#" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:typeface="monospace" 
     android:textSize="14sp" 
     android:digits="4" 
     android:textAlignment="gravity" 
     android:layout_weight="5" 
     android:gravity="left" 
     android:singleLine="true" 
     android:phoneNumber="true" 
     android:inputType="textNoSuggestions|none"> 

</TextView> 
+0

Stai vedendo questo comportamento su tutti i dispositivi, o solo alcuni? Emulatore –

+0

.. non ancora installato su un dispositivo live. Forse è solo un problema di emulazione? – TrustNoOne

+0

Se si dispone di un altro dispositivo con cui provarlo, lo farei. Non riesco a ricordare di aver mai visto il controllo ortografico fare la sua cosa su un TextView prima. –

risposta

4

In primo luogo, vorrei provare a rimuovere le android:digits, android:phoneNumber e android:inputType attributi.

Tutti questi sono più destinati all'uso con campi che consentono l'input (come ad esempio EditTexts). Inoltre, non sembra che tu stia utilizzando correttamente l'attributo android:digits, poiché la stringa fornita definisce solo i caratteri consentiti.

In sostanza, questa combinazione di attributi sta dicendo ad Android che il tuo TextView accetta input sotto forma di numeri di telefono che contengono solo il numero 4, che questo TextView non accetta input di alcun tipo, e Android non dovrebbe fornire il correttore ortografico suggerimenti.

Se si imposta da solo il contenuto di TextView, non vi è alcun motivo per provare a limitare il contenuto di TextView con flag come android:phoneNumber poiché è quello che lo controlla.

+0

Buona presa, non sono sicuro di come sono finiti lì perché non ho alcun numero di telefono nell'app - probabilmente ho spuntato una scatola accidentalmente nel progettista del layout in IDEA.
Guardando oltre, sembra che qualsiasi elemento relativo allo stile di un campo di input attiverà il controllo ortografico. Ho appena provato uno che aveva Android: capitalize = "caratteri" che non fa parte del gruppo inputType. – TrustNoOne

+1

Rimozione di android: inputType funziona per me.Non era necessario nel mio caso – Vikram

1

So che questo è un vecchio thread, ma rimuovendo il seguente contenuto da XML ha lavorato per me:

android:autoText="true" 
Problemi correlati