Android Custom EditText Numbers - PullRequest
       62

Android Custom EditText Numbers

0 голосов
/ 25 сентября 2018

В моем приложении есть поля EditText, которые должны содержать десятичные числа.Поэтому моя клавиатура должна показывать все цифры, запятую, точку и знак минус, чтобы ввести значения валюты.Я определил поле EditText через следующие InputTypes:

InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL | InputType.TYPE_NUMBER_FLAG_SIGNED

Так что это работает почти для всех устройств Android, но совсем недавно я обнаружил странное поведение с устройствами Samsung A3 (2017):

displayed keyboard

Как видите, клавиатура позволяет вводить только натуральные числа.

Данные тестового устройства:

  • Телефон: Galaxy A3 (2017)
  • Версия Android: 8.0.0
  • Версия Samsung Experience: 9.0
  • Клавиатура: Клавиатура Samsung
  • Управляемое MDM устройство: Да (KNOX)

Я установил клавиатуру Google на клавиатуре GBoard, и цифровая клавиатура появилась как хотелось, с точками и запятыми.Но я не могу просто надеяться на потребителей, загружающих другую клавиатуру, если клавиатура Samsung не работает.Есть идеи, как решить эту проблему?

Я реализовал свой CustomEditText в качестве состояния в этой теме: Клавиатура Android с номером и десятичной дробью для LG G4

...