加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Android 防止2个相互影响的 EditText 死循环

发布时间:2021-11-21 21:15:32 所属栏目:教程 来源:互联网
导读:Android两个EditText同时设置TextChangedListener后,会使程序进入死循环,解决方法如下: etExchangeRateEn = (EditText) findViewById(R.id.etExchangeRateEn); etExchangeRateCn = (EditText) findViewById(R.id.etExchangeRateCn); twEN = new TextWatch

Android两个EditText同时设置TextChangedListener后,会使程序进入死循环,解决方法如下:
 
   etExchangeRateEn = (EditText) findViewById(R.id.etExchangeRateEn);
  etExchangeRateCn = (EditText) findViewById(R.id.etExchangeRateCn);
 
  twEN = new TextWatcher()
  {
 
   @Override
   public void afterTextChanged(Editable s)
   {
    etExchangeRateCn.addTextChangedListener(twCN);
   }
 
   @Override
   public void beforeTextChanged(CharSequence s, int start, int count, int after)
   {
 
   }
 
   @Override
   public void onTextChanged(CharSequence s, int start, int before, int count)
   {
 
    etExchangeRateCn.setText( "CN");
 
   }
 
  };
 
  twCN = new TextWatcher()
  {
 
   @Override
   public void afterTextChanged(Editable s)
   {
    etExchangeRateEn.addTextChangedListener(twEN);
 
   }
 
   @Override
   public void beforeTextChanged(CharSequence s, int start, int count, int after)
   {
   }
 
   @Override
   public void onTextChanged(CharSequence s, int start, int before, int count)
   {
 
    etExchangeRateEn.setText("EN");
 
   }
  };
  etExchangeRateEn.addTextChangedListener(twEN);
  etExchangeRateCn.addTextChangedListener(twCN);

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读