Android EditText中输入价格判断

EditText 中输入价格判断

mText.addTextChangedListener(new SimpleEditWatcher() {
            @Override
            public void afterTextChanged(Editable s) {
                final String text = s == null ? "" : s.toString();
                mClickButton = !TextUtils.isEmpty(text.trim());
                int index = text.indexOf(".");
                int index0 = text.indexOf("0");
                if (index0 == 0 && text.substring(1).equals("0")) {
                    mText.setText("0");
                    mText.setSelection(1);
                }
                if (index > 0) {
                    if (text.length() > index + 3) {
                        String payText = text.substring(0, index + 3);
                        mText.setText(payText);
                        mText.setSelection(payText.length());
                    }
                } else if (index == 0) {
                    mText.setText("");
                }
                if (!TextUtils.isEmpty(mText.getText().toString())) {
                    float f = Float.parseFloat(mText.getText().toString());
                    if (f >= 1.00) {
                        if (f < 1000000.00) {
                            mClickButton = true;
                            mMoney = mText.getText().toString();
                            checkSubmit();
                        } else {
                            mText.setText(mMoney);
                            mText.setSelection(mMoney.length());
                            mClickButton = false;
                            checkSubmit();
                        }
                    } else {
                        mClickButton = false;
                        checkSubmit();
                    }
                } else {
                    mClickButton = false;
                    checkSubmit();
                }
                checkSubmit();
            }
        });
时间: 2024-11-03 21:36:31

Android EditText中输入价格判断的相关文章

如何获取一个AlertDialog中的EditText中输入的内容

怎么获取一个AlertDialog中的EditText中输入的内容? new AlertDialog.Builder(this)   .setTitle("请输入")   .setIcon(android.R.drawable.ic_dialog_info)   .setView(new EditText(this))   .setPositiveButton("确定", null)   .setNegativeButton("取消", null

android EditText 限制输入大小写,大写转小写

在写登录验证的时候,需要将用户输入的大写字符转化为小写.看了下API,只有InputFilter.AllCaps是将EditText 的小写英文字符转化为大写.好吧.依赖AllCaps在写个类似的InputFilter吧.基本上Copy AllCaps的代码,只改了两行.大家看代码吧 import android.text.InputFilter; import android.text.SpannableString; import android.text.Spanned; import a

Android EditText中插入图片并响应点击事件

EditText中插入图片基本就是两种方法: 1,通过Html.fromHtml(..)来实现 [mw_shl_code=java,true]eText.append(Html.fromHtml("<img src='" + R.drawable.ohoh + "'/>", imageGetter, null));[/mw_shl_code] 2,通过ImageSpan与SpannableString/SpannableStringBuilder. [m

EditText中输入信息的限制的方法

应用场景 在Android应用中有时需要EditText中只允许输入约定的一些字符,禁止输入其他字符.这里列举了一些可能的应用场景. 1. 场景一 在通讯录保存好友信息界面中填写好友的电话号码时,应当只能输入数字,禁止输入其他字符. 2. 场景二 在登录界面中输入用户名和密码时,由于很多账号系统都不支持中文的用户名和密码,只允许使用英文字母和数字.如果可以禁止在输入框中输入中文可以减少不必要的登录验证过程,也方便了用户操作. 3. 场景三 在邮箱地址的输入框中,应当只允许输入英文字母,数字和@.

代码设置Android EditText的输入长度maxLength

在今天开发中遇到一个自己写的自定义控件,因为考虑到复用,在每个需求下的edittext的输入长度不一样,在xml文件里面设置是不能实现这个需求的,于是在发现了这个API,可以通过代码设置! 希望对大家有所帮助! public void setEtCoustomLength(int length){ if (length>0) { etCoustom.setFilters(new InputFilter[]{new InputFilter.LengthFilter(length)}); } } 重

Android EditText中字符大小与光标位置

最近的工作需要自己写一个数字键盘用于数字的输入,采用的方法是自定义一个  Dialog,然后将数字显示在EditText中.在处理过程中遇到遇到一个问题,在EditText的点击事件中屏蔽系统键盘并弹出自定义的Dialog,无法获取用户选中的字符即Selection,造成的问题现象是用户不能选中中间某个位置修改输入值. 为了解决这一问题,需要在EditText的点击事件中获取Selection. 解决方法是:1.在EditText点击事件中获取用户点击位置,主要取其中的touchX值(这里主要讨

(转)Android EditText限制输入字符的5种实现方式

最近项目要求限制密码输入的字符类型, 例如不能输入中文.   现在总结一下EditText的各种实现方式,  以比较各种方法的优劣. 第一种方式:  设置EditText的inputType属性,可以通过xml或者java文件来设置.假如我要设置为显示密码的形式,可以像下面这样设置: 在xml中,   android:inputType="textPassword" 在java文件中,可以用 ev.setInputType(InputType.TYPE_TEXT_VARIATION_P

android EditText限制输入

今天有一个需要,就是EditText要求只接收中文和英文的输入内容. 翻了下api,发现EditText中有一个setFilters方法来限制用户输入内容. 而setFilters方法接收一个InputFilter接口,而InputFilter有2个内部实现类一个是AllCaps另外一个是LengthFilter 第一个AllCaps讲接收到的英文全部大写. 第二个是文本内容长度过滤(中文是2个长度哦.) 那么我们就只需要创建一个类继承LengthFilter兵实现filter方法即可    

Android EditText的输入监听,输入字符的动态获取

http://itindex.net/detail/38974-android-edittext-%E7%9B%91%E5%90%AC 有时候我们可能会用到时时的监听EditText输入字符的时时监听,监听字符的个数,做一些正则表达式的处理等.如下方法可以实现: 我做的是时时的把EditeText输入的数据同步到TextView上 布局文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android&