EditText添加输入数字范围限制

1.方法

/**
*
* @Title: setRegion
* @Description: TODO(限制EditText只能输入设定范围内数字)
* @param: @param et
* @return: void
* @throws
*/
private void setRegion(final EditText et) {
et.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {

if (start > 1){
if (MIN_MARK != -1 && MAX_MARK != -1){
int num = Integer.parseInt(s.toString());
if (num > MAX_MARK) {
s = String.valueOf(MAX_MARK);
et.setText(s);
}else if(num < MIN_MARK)
s = String.valueOf(MIN_MARK);
return;
}
}
}

@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {

}

@Override
public void afterTextChanged(Editable s) {
if (s != null && !s.equals("")) {
if (MIN_MARK != -1 && MAX_MARK != -1) {
int markVal = 0;
try {
markVal = Integer.parseInt(s.toString());
}catch (NumberFormatException e){
markVal = 0;
}
if (markVal > MAX_MARK) {
Toast.makeText(getBaseContext(), "输入数字不能超过110", Toast.LENGTH_SHORT).show();
et.setText(String.valueOf(MAX_MARK));
}
return;
}
}
}
});
}

 

2.引用

this.setRegion(edt_time);

转载于:https://www.cnblogs.com/ponos/p/4284482.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值