Как я могу обеспечить числовую десятичную клавиатуру в Android?

У меня есть EditText, который требует беззнакового десятичного ввода.

Если я использую:

setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
setKeyListener(NumericDigitsKeyListener.getInstance(false, true));

Тогда он отлично работает в США, но мои европейские клиенты не могут использовать его, потому что он, похоже, не дает запятой в качестве десятичной точки.

Если, с другой стороны, я использую:

setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
setKeyListener(DigitsKeyListener.getInstance("01234567890.,"));

тогда он отлично работает в США и Европе, но на некоторых устройствах (например, Galaxy S3) мягкая клавиатура, которая появляется, строго цифровая (без периода запятой ИЛИ).

Как я могу использовать цифровую клавиатуру С доступом к разделителю с разделителями, который подходит для локали?

Спасибо

Ответ 1

Возможное решение/обходное решение - предоставить собственную клавиатуру. Он должен быть тихим, легко реализовать для калькулятора