Deshacer los cambios en la vista de lista onbackpressed

Tengo una vista de lista que contiene la lista de productos y al hacer clic en el elemento de la lista, se abren los detalles de la lista. El elemento de la lista contiene valores como peso bruto, peso neto, etc.

En la parte superior de la página de detalles del elemento de la lista, tengo un botón cruzado en lugar del botón Atrás que al hacer clic abrirá un cuadro de diálogo que dice "¿Desea guardar los cambios" y con el botón sí o no.

Al presionar SÍ, puedo guardar los cambios en la vista de lista, pero al presionar NO, no puedo deshacer los cambios.

A continuación se muestra el código para mostrar el cuadro de diálogo:

@Override
    public boolean onBackPressed() {

        final AlertDialog alert = new AlertDialog.Builder(getContext()).create();
        alert.setMessage(getContext().getString(R.string.save_activity));
        alert.setCancelable(false);
        alert.setButton(getContext().getString(R.string.strYes), new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                    saveAndClose();
            }
        });
        alert.setButton2(getContext().getString(R.string.strNo), new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                alert.dismiss();
                ((Activity)getContext()).finish();
            }
        });
        alert.show();
        return true;

    }

Por lo mismo, intenté crear una lista de matriz con diferentes referencias e intenté establecer los valores.

Pero parece que no funciona.

Proporcione cualquier solución para lo mismo.

Respuestas a la pregunta(1)

Su respuesta a la pregunta