¿Cómo establecer el elemento activo en la barra de navegación desplegable de la Barra de acciones?

Estoy tratando de solucionar el problema al reiniciar la actividad en los cambios de orientación.

Yo tengo unActionBar con navegación de lista desplegable y después de cada rotación se activa el primer elemento de esta lista. Manteniendofragment contenido no fue difícil, pero no sé cómo configurar el elemento de la lista activa.

Aquí está la definición deActionBar:

getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
ArrayAdapter<CharSequence> list = ArrayAdapter
    .createFromResource(this, R.array.action_list, android.R.layout.simple_dropdown_item_1line);
list.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
getActionBar().setListNavigationCallbacks(list, this);

Y aquí está mi solución:

@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
    if (!application.isRotated) {
        application.activePosition = itemPosition;
        application.activeId = itemId;
        getFragmentManager().beginTransaction()
            .replace(android.R.id.content, MyFragment.newInstance(itemPosition))
            .commit();
    } else {
        application.isRotated = false;
        this.onNavigationItemSelected(application.activePosition, application.activeId);            
    }
    return true;
}

@Override
protected void onStop() {
    super.onStop();
    application.isRotated = true;
}

Sin embargo, no estoy seguro de que sea la mejor solución.

Respuestas a la pregunta(10)

Su respuesta a la pregunta