AsyncTask
에 약간의 문제가 있습니다. 나는이 방법으로 AsyncTask를 실행 : java.lang.IllegalStateException
: 나는 점점 계속 두 번째 문자를 입력하면AsyncTask가 취소를 수신하지 않습니다.
myTask = new myTask();
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String s) {
// same as onquerychange
return true;
}
@Override
public boolean onQueryTextChange(String s) {
if (!s.isEmpty()) {
if (myTask.getStatus() == AsyncTask.Status.RUNNING ||
myTask.getStatus() == AsyncTask.Status.PENDING) {
myTask.cancel(true);
}
myTask.execute(context, s);
} else {
myTask.execute(context, "emptyquery");
}
return true;
}
});
작업을 실행할 수 없습니다 : 작업이 이미 (작업이 한 번만 실행할 수 있습니다) 실행 된
그래서 취소되지 않는다고 가정합니다. 어떤 제안? 감사합니다
asynctask를 여러 번 호출합니다 – Raghunandan
스레드를 취소 할 필요가 없습니다 – QuokMoon
나는 그것을 보았지만 myTask.cancel을 호출합니다! – iGio90