¿Por qué no se invocó onNothingSelected en spinner?

Tengo un Android Spinner y quiero escuchar el evento cuando el usuario presiona "Tecla Atrás" cuando se muestra el panel de selección del spinner. He implementado OnItemSelectedListener, pero no se invocó onNothingSelected (AdapterView arg0) cuando presioné la tecla Atrás.

Solo quiero escuchar el evento cuando el usuario no selecciona nada (o el panel de selección desaparece).

¿Hay una manera correcta de hacer esto?

¡Gracias!

 Spinner s1 = (Spinner) findViewById(R.id.spinner1);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this, R.array.colors, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    s1.setAdapter(adapter);
    s1.setOnItemSelectedListener(
            new OnItemSelectedListener() {
                public void onItemSelected(
                        AdapterView<?> parent, View view, int position, long id) {
                    showToast("Spinner1: position=" + position + " id=" + id);
                }

                public void onNothingSelected(AdapterView<?> parent) {
                    showToast("Spinner1: unselected");
                }
            });

Esta es una muestra en Android 2.2 SDK, tampoco muestra "Spinner1: no seleccionado" cuando desaparece el panel de selección.

Respuestas a la pregunta(2)

Su respuesta a la pregunta