Używanie Androida: atrybut Cyfry w celu ograniczenia znaków zatrzymuje działanie następnego przycisku działa

Mam kilka pól EditText w aplikacji na Androida i użyłem android: cyfry, aby zatrzymać wprowadzanie nieprawidłowych znaków.

na przykład:android:digits="@string/validchars" (gdzie „validchars” to zasób łańcuchowy wszystkich poprawnych znaków - np. A-Z, 0-9 i niektóre znaki interpunkcyjne)

Problem polega na tym, że jeśli użytkownik naciśnie klawisz ENTER na miękkiej klawiaturze, użył go do przeniesienia do następnego pola, ale ponieważ dodałem android: bit przestał działać. Próbowałem dodać n dovalidchars ale to po prostu zezwala na zwroty w polach tekstowych z pojedynczą linią (!), więc nie pomaga. Próbowałem manipulować imeOptions (dodającactionNext itp.), ale to też chyba nie rozwiązuje. Czytałem o TextWatchers i InputFilters, ale oba wydają się być zbyt skomplikowane w stosunku do tego, co próbuję zrobićandroid:digits bit działa dobrze w przypadku zatrzymania nieprawidłowych znaków.

Czy ktoś ma jakieś pomysły?

Korzystam z Android SDK w wersji 8 i atakuję zarówno urządzenia 2.2, jak i 2.3.5.

questionAnswers(1)

yourAnswerToTheQuestion