5

Mam paczkę EditTexts w Fragment rejestracji.Android Lollipop EditText: Autouzupełnianie nie działa dla adresów e-mail

Na KitKat i poniżej każdy numer EditText, którego inputType jest adresem e-mail, będzie korzystać z autouzupełniania systemu, co jest wygodne dla użytkowników wprowadzających ich adresy e-mail.

Jednak na Lollipop (5.0.1 na Nexusie 4, za to, co jest warte), odmawia użycia funkcji autouzupełniania. Tu jest mój kodu do ustawiania typu wejścia:

mEditText.setInputType(InputType.TYPE_CLASS_TEXT 
       | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS 
       | InputType.TYPE_TEXT_FLAG_AUTO_CORRECT)); 

Poniższy kod, który jest po prostu czerpanie pierwszą literę każdego słowa zamiast ustawiania wejście jak adres e-mail jest powodując autouzupełniania do pracy na wszystkich API poziomów (choć flag jestem ustawienie jest dla Autokorekta zamiast Autouzupełnianie):

mEditText.setInputType(InputType.TYPE_CLASS_TEXT 
      | InputType.TYPE_TEXT_FLAG_CAP_WORDS 
      | InputType.TYPE_TEXT_FLAG_AUTO_CORRECT); 

który jest wyjątkowo mylące, ponieważ patrząc na docs dla TYPE_TEXT_FLAG_AUTO_CORRECT, wygląda na to, że powinien być w rzeczywistości wyłączenie autouzupełniania .

TL; DR: Jak, do diabła, włączasz automatyczne uzupełnianie w Lollipop EditText, w którym spodziewasz się otrzymać adres e-mail?

Odpowiedz

2

Nick Butcher ma świetny post na ten temat.

+1

Jest to zdecydowanie pomocne, jeśli chcę użyć menedżera konta do tego, ale w DesignatedNerd

Powiązane problemy