Ho alcuni input di testo HTML in una WebView e ho bisogno di disabilitare gli autosuggetions su questi input da Android, non da HTML (completamento automatico = disattivato).Disabilitare l'autosuggestion su WebView?
Come posso fare questo?
Ho alcuni input di testo HTML in una WebView e ho bisogno di disabilitare gli autosuggetions su questi input da Android, non da HTML (completamento automatico = disattivato).Disabilitare l'autosuggestion su WebView?
Come posso fare questo?
Questo problema mi ha irritato per un bel po ', ma la soluzione è molto semplice:
webview.getSettings().setSaveFormData(false);
ho scritto qui:
http://roysutton.com/2012/02/21/preventing-auto-fill-in-android-webview/
Per quando webview ha già i dati: 'WebViewDatabase.getInstance (this) .clearFormData();' –
Oltre a setSaveFormData impostazione come False, questo anche mi ha aiutato
WebView.getSettings().setSavePassword(false);
WebView.clearFormData();
Non ho potuto fare questo dal lato di Android, tuttavia aggiungendo al testo del webview spellcheck = "false" ha fatto il trucco.
<textarea spellcheck="false"></textarea>
Le risposte sopra suggerite non mi hanno aiutato. Quindi ho trovato la soluzione successiva: ho appena creato un semplice wrapper per WebView e l'ho usato.
public class NoSuggestionsWebView extends WebView {
public NoSuggestionsWebView(Context context) {
super(context);
}
public NoSuggestionsWebView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public NoSuggestionsWebView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public InputConnection onCreateInputConnection(EditorInfo outAttrs) {
InputConnection ic = super.onCreateInputConnection(outAttrs);
outAttrs.inputType &= ~EditorInfo.TYPE_MASK_VARIATION; /* clear VARIATION type to be able to set new value */
outAttrs.inputType |= InputType.TYPE_TEXT_VARIATION_WEB_PASSWORD; /* WEB_PASSWORD type will prevent form suggestions */
return ic;
}
}
Brillante! Ho avuto lo stesso problema nella mia app e, dopo aver applicato questo, gli utenti hanno segnalato il problema risolto. –
Se ha già i dati del modulo quindi setSaveFormData(false)
non si fermerà da utilizzarlo. Per cancellare il database potrebbe essere necessario effettuare le seguenti operazioni:
WebViewDatabase.getInstance(this).clearFormData();
qui è il collegamento principale [http://stackoverflow.com/questions/582244/is-there-a-w3c- valido-way-to-disable-completamento automatico-in-a-html-form] [1] [1]: http://stackoverflow.com/questions/582244/is-there-a-w3c -valid-way-to-disable-autocomplete-in-a-html-form –