当条件为真时,在后台工作

时间:2018-06-12 13:47:06

标签: android

我想做(后台工作)并在后台做其他操作 当文本字段发生变化时 我把文本视图和我用于文本更改监听器 在里面我尝试调用runnable

 editText.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
            handler.postDelayed(runreco,0);
        }

        @Override
        public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        }

        @Override
        public void afterTextChanged(Editable editable) {

        }
    });
  private Runnable runreco = new Runnable() {
    public void run() {
      calculate();
    }

};

但是每次调用它都会创建线程并导致麻烦 我想要一个很好的方法在我需要时在后台开始一些工作(当我需要时恢复相同的线程)

1 个答案:

答案 0 :(得分:0)

为什么你只是不使用你的函数inisede listener

onTextChanged(CharSequence charSequence, int i, int i1, int i2)

如果你想创建这个线程,我建议在其他文件中编写新类和新类控制器。 带线程的类将执行您想要执行的操作,控制器将触发线程并停止线程 但事情很简单,事情就足够了