// Elimina de la base de datos los alumnos seleccionados, actualiza el // adaptador y cierra el modo de acción conextual. public void eliminarAlumnosSeleccionados() { // Se obtiene el array con las posiciones seleccionadas. ArrayList<Integer> seleccionados = mAdaptador.getSelectedItemsPositions(); // Por cada selección. for (int i = 0; i < seleccionados.size(); i++) { // Se obtiene la referencia al alumno. Firebase refAlumno = mAdaptador.getRef(seleccionados.get(i)); // Se elimina el alumo de la bd. refAlumno.removeValue(); } lblNuevoAlumno.setVisibility(mAdaptador.isEmpty() ? View.VISIBLE : View.INVISIBLE); // Se finaliza el modo contextual. mActionMode.finish(); }
private void eliminarAlumno(int position) { // Se obtiene la referencia al alumno. Firebase refAlumno = mAdaptador.getRef(position); final String key = refAlumno.getKey(); final Alumno alumno = mAdaptador.getItem(position); // Se borra de la base de datos. refAlumno.removeValue(); lblNuevoAlumno.setVisibility(mAdaptador.isEmpty() ? View.VISIBLE : View.INVISIBLE); Snackbar snackbar = Snackbar.make(lblNuevoAlumno, R.string.alumno_eliminado, Snackbar.LENGTH_LONG); snackbar.setAction( R.string.deshacer, new View.OnClickListener() { @Override public void onClick(View v) { agregarAlumno(key, alumno); } }); snackbar.show(); }