小数点区切りのカンマ (',') と numberDecimal inputType の EditText で質問する

小数点区切りのカンマ (',') と numberDecimal inputType の EditText で質問する

ininputType numberDecimalでは小数点の区切りとしてEditTextドットを使用します.。ヨーロッパでは代わりにカンマを使用するのが一般的です,。ロケールがドイツ語に設定されていても、小数点の区切りは.

小数点の区切りとしてコンマを使用する方法はありますか?

ベストアンサー1

回避策としては (Google がこのバグを修正するまで) および を使用するEditTextことandroid:inputType="numberDecimal"ですandroid:digits="0123456789.,"

次に、次の afterTextChanged を使用して、EditText に TextChangedListener を追加します。

public void afterTextChanged(Editable s) {
    double doubleValue = 0;
    if (s != null) {
        try {
            doubleValue = Double.parseDouble(s.toString().replace(',', '.'));
        } catch (NumberFormatException e) {
            //Error
        }
    }
    //Do something with doubleValue
}

おすすめ記事