/ / ImageButton не працює після того, як один раз натиснув - android

ImageButton не працює після того, як один раз натиснув - android

Я зробив кнопку, щоб видалити елемент ListView. Він працює відмінно від першого клацання, але якщо я спробую натиснути ще раз, він більше не працює.

Ось код onClickListener:

    OnClickListener clickBtnExcluir = new OnClickListener() {

@Override
public void onClick(View v) {
if (taskManager == null) {
taskManager = new AsyncTaskManager(context);
final Entity entity = (Entity) v.getTag();
Service service = new Service();
taskManager.executeTask(service, new String[] { cod1, cod2 }, new OnAsyncTaskCompleteListener<Return>() {
@Override
public void onTaskCompleteSuccess(Return result) {
if (result == Return.YES) {
refreshList();
}
}

@Override
public void onTaskFailed(Exception cause) {

}

});
}
}
};

І ось це refreshList метод

public void refreshList() {
taskManager = new AsyncTaskManager(context);
ListService listService = new ListService();

taskManager.executeTask(listService , new String[] { cod1, "1", "0" },
new OnAsyncTaskCompleteListener<List<Entity>>() {

@Override
public void onTaskFailed(Exception cause) {

}

@Override
public void onTaskCompleteSuccess(List<Entity> result) {
listView.refreshDrawableState();
mainList = result;
notifyDataSetChanged();
}

});
}

Хтось має якісь ідеї?

Вибачте за помилки граматики.

Відповіді:

3 для відповіді № 1

після першого клацання, taskManager більше не є нульовим, тому ви не проходите виконуваний код


1 для відповіді № 2

Відповідно до вашого коду вище, onClick працюватиме один раз {і це те, що відбувається}

Думаю, ви хочете перевірити статус вашого AsyncTask перед тим, як додати інший асинхрон для виконання:

Для цього, будь ласка, замінити ваш, якщо з цієї лінії

if(taskManager.getStatus()==Status.FINISHED){ //check required status

}

не забудьте перевірити це перед будь-якими іншими умовами:

if(taskManager!=null){

}