Używam EditText w moim xml, gdzie chcę, żeby użytkownik wpisał swoje numery telefonów. Chcę ograniczyć liczbę cyfr (powinno to być 10 cyfr), więc zastosowałem maxLength="10". Wszystkie sprawy działają dobrze, z wyjątkiem sytuacji, gdy zaczynam swój numer od „0”, co pozwala mi wpisać 9 cyfr. Poniżej znajduje się mój załączony kod dla EditText.

<EditText
                    android:textSize="16sp"
                    android:singleLine="true"
                    android:id="@+id/phone"
                    android:textColor="#7c6596"
                    android:textColorHint="#cab2e5"
                    android:background="@drawable/border_radius"
                    android:gravity="center"
                    android:layout_margin="1dp"
                    android:padding="10dp"
                    android:inputType="number"
                    android:maxLength="10"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="Phone number"/>
0
M Salman 16 listopad 2019, 17:22
Czy możesz zaktualizować swoje pytanie, podając dokładnie te dane, które próbujesz?
 – 
Sagar
16 listopad 2019, 18:35
maxLength określa maksymalną liczbę wprowadzanych znaków - wydaje się, że Twoim problemem jest to, jak przetwarzasz pole tekstowe i akceptujesz taki tekst z wiodącymi zerami (btw a 0 to cyfra). Najlepiej będzie, jeśli opublikujesz, jakie dane wejściowe są akceptowalne, a jakie nie, aby pomóc w zdefiniowaniu problemu. Zauważ również, że istnieje typ wejścia phone, który po prostu przedstawia nieco inną klawiaturę, która przypomina wejście telefonu.
 – 
Andy
16 listopad 2019, 18:35
O to także liczba!
 – 
Prajwal Waingankar
16 listopad 2019, 21:27
Na przykład. jeśli wstawię wszystkie 0 w moim polu edycyjnym, pozwoli mi to napisać 9 cyfr w ten sposób (000000000), ale powinno pozwolić mi na napisanie 10 cyfr (000000000). Inny przykład to: „0123456789” to jest w porządku, ale jeśli napiszę to: „066566655”, to nie mogę napisać więcej (pamiętaj, że w tym przypadku jest 9 cyfr).
 – 
M Salman
18 listopad 2019, 10:16

1 odpowiedź

Oto rozwiązanie. Stosowałem maxLength w xml iw tym samym czasie miałem też TextWatcher na tym polu w moim pliku klasy. Usunąłem TextWatcher i teraz wszystkie sprawy są doskonale załatwione. Mam nadzieję, że to komuś pomoże. Twoje zdrowie !!

0
M Salman 18 listopad 2019, 11:55