Android使用EditText输入浮点型数字设置第一位不能输入小数点并且保留两位小数
来源:互联网 发布:淘宝兼职可信不 编辑:程序博客网 时间:2024/05/16 15:25
最近做一个非常简单的功能是用EditText输入价格,需求是第一位不能输入小数点,并且要保留小数点后两位。
起初上网百度了一个方法,但是不够严谨,会crash,所以我在这里把他的方法优化了一下。
1.首先,要输入浮点型数字,在xml的EditText里要加上一个属性:android:inputType="numberDecimal";
2.然后在该EditText所在的Activity或者Fragment里加上:(此功能是设置edit允许输入数字并且可以是小数;)
yourEditText.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL | InputType.TYPE_NUMBER_VARIATION_NORMAL);
3.最后添加输入监听:
yourEditText.addTextChangedListener(new TextWatcher() {
private int selectionStart;
private int selectionEnd;
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
selectionStart = yourEditText.getSelectionStart();
selectionEnd = yourEditText.getSelectionEnd();
if (!isOnlyPointNumber(askPriceEdt.getText().toString()) && s.length() > 0) {
//删除多余输入的字(不会显示出来)
s.delete(selectionStart - 1, selectionEnd);
yourEditText.setText(s);
yourEditText.setSelection(s.length());
}
}
});
/**
* 保留两位小数正则
*
* @param number
* @return
*/
public static boolean isOnlyPointNumber(String number) {
Pattern pattern = Pattern.compile("^\\d+\\.?\\d{0,2}$");
Matcher matcher = pattern.matcher(number);
return matcher.matches();
}
- Android使用EditText输入浮点型数字设置第一位不能输入小数点并且保留两位小数
- android editText 控制输入最大值、保留两位小数、保留小数点前面两位数
- Android EditText 限制输入类型数字或小数,并且小数位数限定为两位
- jsp 校验数字 保留两位小数 不能输入汉字
- c# 控制TextBox只能输入小数(只能输入一个小数点,小数点后只能输入两位,第一位不能是小数点)
- EditText设置输入仅能输入两位小数,并且设置输入边界
- EditText最多输入两位小数&不能以小数点开头&最多一个小数点
- 数字输入处理 , 保留两位小数
- EditText保证输入数字或者是保留两位小数的数字
- Android EditText限制小数点输入两位
- 控制EditText只能输入两位小数,且第一位不能为点,也不能出现两个点
- edittext 在输入价格时限定输入的位数不大于1000000且可以输入两位小数,第一位不能输入.
- edittext只能输入数字和小数点时并且小数点后只能输入两个小数
- Android EditText限制输入两位小数
- EditText限制 只能输入0.00 -100保留两位小数
- EditText保留两位小数并输入不超过最大值
- EditText中输入金额保留两位小数
- JS限制input输入的为数字并且有小数的时候最多保留两位小数
- Glide从V3到V4的探索
- Echarts柱状图实现
- 实现购物车 全选全不选,反选,单选-选满时同步全选复选框--复选框checked属性取值问题已解决
- 配置tomcat服务器内存大小中的Xms、Xmx、PermSize、MaxPermSize 详解
- CSDN-markdown编辑器的使用
- Android使用EditText输入浮点型数字设置第一位不能输入小数点并且保留两位小数
- Android基础_相机 图库 infaceview(十)
- 内存泄露、内存溢出
- mysql复制数据库的恢复
- 斐讯K2路由编译Padavan华硕固件和心得
- 进程间通信
- 第十八篇:JAVA之泛型
- 20170807-20170813C#工作学习周总结
- JVM调优---常用JVM配置参数