问题描述
EditText 中的inputType numberDecimal 使用点. 作为小数分隔符.在欧洲,通常使用逗号 , 代替.即使我的语言环境设置为德语,小数点分隔符仍然是 .
The inputType numberDecimal in EditText uses the dot . as decimal separator. In Europe it's common to use a comma , instead. Even though my locale is set as german the decimal separator is still the .
有没有办法将逗号作为小数分隔符?
Is there a way to get the comma as decimal separator?
推荐答案
一种解决方法(直到 Google 修复此错误)是使用 EditText 和 android:inputType="numberDecimal" 和 android:digits="0123456789.,".
A workaround (until Google fix this bug) is to use an EditText with android:inputType="numberDecimal" and android:digits="0123456789.,".
然后使用以下 afterTextChanged 将 TextChangedListener 添加到 EditText:
Then add a TextChangedListener to the EditText with the following afterTextChanged:
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
}
这篇关于EditText 中带有 numberDecimal inputType 的小数分隔符逗号 (',')的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)