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);

时间: 2024-11-01 20:33:16

EditText添加输入数字范围限制的相关文章

android代码设置EditText只输入数字、字母

 如何设置EditText,使得只能输入数字或者某些字母呢? 一.设置EditText,只输入数字: 方法1:直接生成DigitsKeyListener对象就可以了. et_1.setKeyListener(new DigitsKeyListener(false,true)); 方法2:在EditText中设置属性,android:numeric="integer"即只能输入整数,如下 android:singleLine="true" android:nume

android 设置EditText只能输入数字

android:numeric="integer" 设置EditText只能输入数字 <EditText android:id="@+id/edit_text" android:layout_width="106dp" android:layout_height="50dp" android:numeric="integer" />

让EditText只能输入数字的小技巧

准确的说让Edittext只能输入数字有方法两种,都是通过xml属性设置 方法一: <EditText android:id="@+id/u_account" android:layout_width="0dp" android:layout_height="match_parent" android:layout_marginLeft="13dp" android:inputType="phone|numbe

关于EditText的输入数字校验的问题

一.简述需求 1.需求是输入数字是删除第一位数字后位是0的禁止删除(如支付宝) 2.需求是可以删除任何位置的数字.如果删除第一位后面是0,就去掉无效的0 二.具体的实际例子如: 1010需求1来做:删除第一位是禁止删除 1010需求2来做:删除第一位变成10 三.下面具体上代码 方式一 private void subEditTextString(final EditText et) { if (et != null) { et.addTextChangedListener(new TextWa

android的edittext设置输入限制,只能输入数字

EditText的属性里面已经封装好了相关的设置,上一篇文章里面也提到了,不熟悉的可以去查看上一篇EditText属性大全,这里着重讲输入限制的属性: android:digits="1234567890.+-*/%\n()" 限制输入框中只能输入自己定义的这些字符串 如果输入其它将不予以显示 android:phoneNumber="true" 限制输入框中只能输入手机号码 android:password="true" 限制输入框中输入的任何

第一个app-进阶:1、让EditText屏蔽软键盘仍能光标闪动:2、EditText 的inputType参数类型(密码方式-隐藏显示、只允许输入数字等等)

EditText屏蔽软键盘后,光标消失问题 开始我有个需求:屏蔽系统软键盘 于是找到并使用这个方法: //edit_text1.setInputType(InputType.TYPE_NULL); //屏蔽软键盘弹出//edit_text2.setInputType(InputType.TYPE_NULL); //屏蔽软键盘弹出//edit_text3.setInputType(InputType.TYPE_NULL); //屏蔽软键盘弹出 让三个EditText都成功地没有软键盘弹出. 后来我

如何优雅的研究 RGSS3 (五) 输入数字的画面

游戏中的名字输入画面是一个非常没有中国特色的场景. 我们知道英文不过26个字母,日语也只有几百个假名,但是汉字的数量实在是太多了,导致名字输入画面在汉化成中文版时只能用部分汉字来填充假名. 输入名字的功能并没有什么重要价值,但是这个功能实现的方法却值得我们研究. 游戏中有一个默认的输入数字的窗口,但是它非常不好用. 今天就来参照名字输入画面编写一个数字输入画面.用于玩家向游戏中输入数字. 涉及到名字输入画面的有三个类:Scene_Name.Window_NameEdit.Window_NameI

EditText实现输入限制和校验

EditText实现输入限制和校验 一.方法 1)输入限制 1.通过android:digits限制只能输入小写abc android:digits="abc" 2.通过android:inputType限制只能输入数字 android:inputType="number" 在android:inputType中可以设置各种限制,比如邮箱地址等等 2)校验 直接通过代码实现 String s=et_verify_empty.getText().toString();

NPOI 生成Excel (单元格合并、设置单元格样式:字段,颜色、设置单元格为下拉框并限制输入值、设置单元格只能输入数字等)

NPIO源码地址:https://github.com/tonyqus/npoi NPIO使用参考:源码中的 NPOITest项目 下面代码包括: 1.包含多个Sheet的Excel 2.单元格合并 3.设置单元格样式:字段,颜色 4.设置单元格为下拉框并限制输入值 5.设置单元格只能输入数字 // // GET: /Excel/ public ActionResult Write() { var workbook = new HSSFWorkbook();//从流内容创建Workbook对象