手记

仿照支付宝输入判断

下面是支付宝,微信充值要求的可以输入什么值不可以输入什么值要求,保留俩位有效数字,其他等等
mMoney.addTextChangedListener(new TextWatcher() {

            @Override
            public void onTextChanged(CharSequence s, int start, int before,
                                      int count) {

                String inputText = s.toString();
                if(!TextUtils.isEmpty(inputText)){
                    char[] inputTextArray = inputText.toCharArray();
                    int inputTextLength = inputTextArray.length;
                    // 小数部分
                    if(inputText.contains(".")){
                        //第一位
                        if('.' == inputTextArray[0]){
                            mMoney.setText("0.");
                        }else if(inputTextLength - 12 > 0){
                            mMoney.setText(etTemp);
                        }else {
                            if(inputText.indexOf(".")!=inputText.lastIndexOf(".")){
                                mMoney.setText(etTemp);
                            }else if (inputText.length() - 1 - inputText.indexOf(".") > 2) {
                                mMoney.setText(etTemp);
                            }

                        }
                    }else{ //整数部分
                        //第一位
                        if('0' == inputTextArray[0]){
                            if(inputTextArray.length>=2){
                                if('.' != inputTextArray[1]){
                                    mMoney.setText(etTemp);
                                }
                            }
                        }else if(inputTextArray.length - 9 > 0){  //最多输入9位数
                            mMoney.setText(etTemp);
                        }
                    }

                }



            }

            /**
             * 之前
             * @param s
             * @param start
             * @param count
             * @param after
             */
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                                          int after) {
                etTemp = s.toString();

            }

            /**
             * 之后
             * @param s
             */
            @Override
            public void afterTextChanged(Editable s) {


                //光标定位到最后一位
                 mtext = mMoney.getText();
                if (mtext instanceof Spannable) {
                    Spannable spanText = (Spannable) mtext;
                    Selection.setSelection(spanText, mtext.length());
                }

                if (TextUtils.isEmpty(mtext)) {
                    counterfeetext.setVisibility(View.INVISIBLE);
                    actualmoeny.setText("实际到账金额(元):" + 0);
                    moneyfee.setText("提现手续费(元):" + 0);// 提现手续费
                    texttime.setText("");
                }else {
                    try {
                        mDagFlag="1";
                        setSize(mtext.toString());
                    } catch (Exception e) {
//                        showToast("请输入正的确值");
                        mDagFlag="2";
                    }

                }


            }
        });

原文链接:http://www.apkbus.com/blog-340477-62738.html

0人推荐
随时随地看视频
慕课网APP