//1.定义handle和线程
Handler handler = new Handler();
private Runnable delayRun = new Runnable() {
@Override
public void run() {
//你需要的动作
}
};
//2.调用
mEditText.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(delayRun!=null){
//每次editText有变化的时候,则移除上次发出的延迟线程
handler.removeCallbacks(delayRun);
}
//延迟500ms,如果不再输入字符,则执行该线程的run方法
handler.postDelayed(delayRun, 500);
}
});