设置EditText设置为两位小数,或者其他位数
来源:互联网 发布:微信淘宝链接转化 编辑:程序博客网 时间:2024/04/29 20:58
布局里
代码:
public static void setPricePoint(final EditText editText) {
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
if (s.length() - 1 - s.toString().indexOf(".") > 2) {
s = s.toString().subSequence(0,
s.toString().indexOf(".") + 3);
editText.setText(s);
editText.setSelection(s.length());
}
s = "0" + s;
editText.setText(s);
editText.setSelection(2);
}
//这里处理用户 多次输入.的处理 比如输入 1..6的形式,是不可以的
if (s.toString().startsWith("0")
&& s.toString().trim().length() > 1) {
if (!s.toString().substring(1, 2).equals(".")) {
editText.setText(s.subSequence(0, 1));
editText.setSelection(1);
return;
}
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
}
android:inputType="numberDecimal"
代码:
public static void setPricePoint(final EditText editText) {
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
//这部分是处理如果输入框内小数点后有俩位,那么舍弃最后一位赋值,光标移动到最后(小数点控制为1,把2改1,3改2)
if (s.length() - 1 - s.toString().indexOf(".") > 2) {
s = s.toString().subSequence(0,
s.toString().indexOf(".") + 3);
editText.setText(s);
editText.setSelection(s.length());
}
}
//这部分是处理如果用户输入以.开头,在前面加上0
s = "0" + s;
editText.setText(s);
editText.setSelection(2);
}
//这里处理用户 多次输入.的处理 比如输入 1..6的形式,是不可以的
if (s.toString().startsWith("0")
&& s.toString().trim().length() > 1) {
if (!s.toString().substring(1, 2).equals(".")) {
editText.setText(s.subSequence(0, 1));
editText.setSelection(1);
return;
}
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
}
0 0
- 设置EditText设置为两位小数,或者其他位数
- Android EditText 限制输入类型数字或小数,并且小数位数限定为两位
- 在EditText里面设置输入两位小数
- iOS设置输入框只能输入正整数或小数,且小数位数不能超过两位
- EditText设置输入仅能输入两位小数,并且设置输入边界
- EditText 动态设置inputtype为小数
- Android中代码设置EditText的小数位数
- BigDecimal设置小数位数
- EditText 保留两位小数
- EditText 保留两位小数
- EditText 保留两位小数
- 大于等于0的正整数或者小数,小数位数最大为5位的正则表达
- [Android] EditText设置只能输入2位小数的探讨
- Android使用EditText输入浮点型数字设置第一位不能输入小数点并且保留两位小数
- Poi excel设置小数位数
- 设置输出小数的位数
- EditText保证输入数字或者是保留两位小数的数字
- 设置Edittext 能输入小数,
- Android进程保活招式大全
- Jenkins 配置邮件通知
- 里氏替换原则
- [LeetCode]Subsets
- 算法学习笔记之均值滤波法
- 设置EditText设置为两位小数,或者其他位数
- python虚拟环境搭建
- WebAPI 用ExceptionFilterAttribute实现错误(异常)日志
- 操作系统与网络实现 之一(丙)
- Codeforces 365Div2 D Mishka and Interesting sum
- 一天一条Linux指令-cp
- ubuntu16.10下JDK8的安装与配置
- Axis2之HelloWorld
- jsp生成 文件下载 比如txt