2012-05-10 8 views
7

Estoy tratando de implementar la barra de acciones de Android en el modo de navegación de lista, se cambian los fragmentos cuando se selecciona un elemento de la lista, pero los fragmentos se superponen y puedo ver el contenido del anterior todavía en la pantalla cuando se selecciona el segundo. Aquí está mi código para la actividad de OnCreate y OnNavigationItemSelected:NavigationBar List Navigation Fragments Overlapping

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

    mFirstFragment = new FirstFragment(); 
    mSecondFragment = new SecondFragment(); 

    SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(
      this, 
      R.array.action_list, 
      android.R.layout.simple_spinner_dropdown_item); 

    mActionBar = getActionBar(); 
    mActionBar.setDisplayShowTitleEnabled(false); 
    mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 
    mActionBar.setListNavigationCallbacks(mSpinnerAdapter, this); 

    if(savedInstanceState != null) { 
     mActionBar.setSelectedNavigationItem(
       savedInstanceState.getInt("currFragment")); 
    } 
} 

public boolean onNavigationItemSelected(int position, long itemId) { 
    FragmentTransaction mFragmentTransaction = 
      getFragmentManager().beginTransaction(); 

    switch(position) { 
     case FIRST_FRAGMENT: 
      mFragmentTransaction.replace(
        android.R.id.content, 
        mFirstFragment); 
      break; 
     case SECOND_FRAGMENT: 
      mFragmentTransaction.replace(
        android.R.id.content, 
        mSecondFragment); 
      break; 
    } 
    mFragmentTransaction.commit(); 

    return true; 
} 

Gracias de antemano!

Respuesta

Cuestiones relacionadas