Boa noite. Tenho um app que ao clicar aparece um menu de ação contextual simples e uma das opções é deletar. Abaixo o método para a ação contextual
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
AdapterView.AdapterContextMenuInfo info;
info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
Extintores extintores = (Extintores) listViewExtintores.getSelectedItemPosition();
switch (item.getItemId()){
case R.id.deleta_item:
excluirExtintor(extintores);
mode.finish();
return true;
case R.id.altera_item:
//excluir();
mode.finish();//Fecha o menu apos clicar no icone
return true;
case R.id.servicos_item:
Intent intent_servicos = new Intent(getApplicationContext(), ServicosActivity.class);
startActivity(intent_servicos);
mode.finish();
return true;
default:
return false;
}
}
Ao selecionar deletar ele redireciona ao seguinte método.
private void excluirExtintor(final Extintores extintores){
String mensagem = getString(R.string.deseja_realmente_apagar)
+ "\n";
DialogInterface.OnClickListener listener =
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch(which){
case DialogInterface.BUTTON_POSITIVE:
try {
DatabaseHelper conexao =
DatabaseHelper.getInstance(PrincipalActivity.this);
conexao.getExtintoresDAO().delete(extintores);
listaAdapter.remove(extintores);
} catch (SQLException e) {
e.printStackTrace();
}
break;
case DialogInterface.BUTTON_NEGATIVE:
break;
}
}
};
UtilsGUI.confirmaAcao(PrincipalActivity.this, mensagem, listener);
}
A minha dificuldade está em ao chamar o método deletar como vou passar a posição do item selecionado?