Android EditText 共用TextWatcher,在TextWatcher中确定对应的被观察对象

   /**
     * 内部类实现TextWatcher公用
     */
    private class MyTextWatcher implements TextWatcher{

        private EditText editText;
        private MyTextWatcher(EditText editText) {
            this.editText = editText;
        }
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            String text = s.toString();
            Log.i(TAG, "onTextChanged: ");

            switch (editText.getId()){
                case R.id.id_et_phone:
                  //XXX
                    break;
                case R.id.id_et_email:
                 //YYY
                    break;
            }
        }

        @Override
        public void afterTextChanged(Editable s) {
            String text = s.toString();
        }
    }
//使用
  id_et.addTextChangedListener(new MyTextWatcher(id_et));

你可能感兴趣的:(Android,android,TextWatche)