Pessoal, estou tentando pôr outro dialog após a confirmação da remoção mas ele está aparecendo antes. Eu fiz assim.
@Override
public boolean onContextItemSelected(@NonNull MenuItem item) {
int itemId = item.getItemId();
if(itemId == R.id.activity_lista_alunos_menu_remover) {
confirmaRemocao(item);
configuraDialogDeConfirmacao();
}
return super.onContextItemSelected(item);
}
private void configuraDialogDeConfirmacao() {
new AlertDialog.Builder(this)
.setMessage("Aluno removido com sucesso.")
.setPositiveButton("OK", null)
.show();
}
private void confirmaRemocao(@NonNull final MenuItem item) {
new AlertDialog
.Builder(this)
.setTitle("Removendo aluno")
.setMessage("Tem certeza que deseja remover o aluno?")
.setPositiveButton("Sim", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
AdapterView.AdapterContextMenuInfo menuInfo =
(AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
Aluno alunoEscolhido = adapter.getItem(menuInfo.position);
removeAluno(alunoEscolhido);
}
})
.setNegativeButton("Não", null).
show();
}
Dessa forma o dialog de confirmação que está no onContextItemSelected aparece antes mesmo que eu remova o item. Como poderia fazer para que ele aparecesse apenas depois de uma remoção?