男人要像阳光 2016-09-14 02:31 采纳率: 0%
浏览 2033
已结题

Android EditText利用TextWatcher判断问题

android 开发,有一个需求,就是利用扫描仪快速往app界面中的Edittext输入一串数字,当这串数字符合规则的时候,调用查询方法。否则不符合规则,就提示。但是大家用过这个TextWatcher的都知道,它每次改变内容都会调用方法,所以致使不到一秒的时间连续调用好多次不符合规则的情况,程序就异常了。不知道有什么方法可以解决,下面是简单的举例:

 package com.xzsj.measure;

import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.Window;
import android.widget.EditText;
import android.widget.Toast;

public class GoneNActivity extends Activity {
    private EditText editText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_gone_n);
        // 绑定EditText输入框
        editText = (EditText) findViewById(R.id.editText1);
        // 实现文字内容改变监听(TextWatcher)
        editText.addTextChangedListener(new TextWatcher() {

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

            }

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

            }

            @Override
            public void afterTextChanged(Editable s) {
                // 内容改变后的监听方法
                if (s.toString().length() == 10) {
                    Toast.makeText(GoneNActivity.this, "格式正确!", Toast.LENGTH_SHORT).show();
                } else {
                    // 不符合格式,(length等于10符合规则,那么这个else分支,连续执行9次,所以异常了,有没有什么办法,实现类似效果,但是不异常)
                    Toast.makeText(GoneNActivity.this, "格式错误!", Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
}

  • 写回答

5条回答

  • Code-Porter 博客专家认证 2016-09-14 02:41
    关注

    你把代码放到onTextChanged方法中试一下。

    评论

报告相同问题?

悬赏问题

  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊