2012-06-22 10 views
17

Używam pola EditText dla użytkownika, aby wprowadzić jego adres e-mail.Android: EditText.setInputType(), jak skonfigurować pocztę e-mail, ale nie sugerować automatycznie

ustawić go za pomocą: „”

box.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); 

Powoduje miękkiej klawiaturze pojawiały się z „@” i (i niektóre klawiatury '.com') w początkowym układzie klawiatury. Świetnie, właśnie tego chcę.

Jednak zauważam, że tekst jest cały czarny (gdy podałem biały). Stwierdziłem, że jest to spowodowane autosugestią. Jeśli przejdę do Settings->Languages/Keyboards->Touch Input->TextInput i wyłączę przewidywanie i uzupełnianie wyrazów, tekst będzie biały.

Teraz pytanie: Jak mogę automatycznie wyłączyć programowanie automatyczne?

Próbowałem utworzenie pola wykonując:

box.setInputType(InputType.TYPE_CLASS_TEXT | TYPE_TEXT_FLAG_NO_SUGGESTIONS); 

Wynika to we wszystkich białego tekstu (czyli bez auto-sugestia). Ale mam już przyciski e-mail "@" i ".com"! Bah-humbug.

W każdym razie, aby uzyskać oba? Dzięki.

Odpowiedz

32

Ten kod powinien załatwić sprawę:

box.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); 

można dodać tyle emocji, ile chcesz, tak długo, jak są one ze sobą kompatybilne.

+0

Dzięki - zapomniałem wspomnieć, że próbowałem tego. Spodziewałem się też, że to zadziała. Wygląda na to, że autosugestia nadal jest włączona, nawet w tym przypadku z flagą NO_SUGGESTIONS. – bubba

+0

Na jakiej wersji urządzenia testujesz? Czy jesteś na emulatorze lub na prawdziwym urządzeniu? – Eric

+0

Droid Incredible 2 na Androida 2.3.4. – bubba

Powiązane problemy