EditText TextWatcher не срабатывает при удалении

У меня есть EditText с TextWatcher, который будет обновлять TextView при каждом изменении текста. Однако он не запускает метод afterTextChanged, если я удаляю из него текст. Почему? И как я могу заставить его сделать это

    final EditText workmiles = (EditText) v.findViewById(R.id.workmiles);
    workmiles.addTextChangedListener(new TextWatcher(){

        public void afterTextChanged(Editable s) {

            int tot = GlobalSingleton.get(getActivity()).getCurrentDay().getTotalMins();

            if (!workmiles.getText().toString().equals("")){
                tot +=  Integer.parseInt(workmiles.getText().toString()) * 2;
                GlobalSingleton.get(getActivity()).getCurrentDay().setWorkmiles(Integer.parseInt(workmiles.getText().toString()));
            }

            int hours = tot / 60;
            int mins = tot % 60;
            total.setText(hours + "  hours  " + mins + "  mins");
        }

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

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

person Allan Macmillan    schedule 21.08.2014    source источник
comment
С чего ты взял, что он не горит? Почему бы тебе не добавить тост в начале?   -  person Bogdan Alexandru    schedule 21.08.2014
comment
afterTextChanged всегда вызывается, просто добавьте Log.d в этот метод   -  person pskink    schedule 21.08.2014


Ответы (2)


если вы чувствуете, что afterTextChanged не срабатывает, поместите журнал внутри этого метода.. и если вы хотите получить эффект при изменении текста в ваших рабочих полях ( EditText ), тогда поместите код внутри onTextChanged< /strong> этот метод

person Vaishali Sutariya    schedule 21.08.2014

Ах, я столкнулся с той же проблемой и понял, что пытаюсь отлаживать пустое тело метода. Просто поместите оператор (Log) и поставьте точку останова, вот и все, работает.

person naveed148    schedule 23.11.2015