mardi 3 février 2015

Actionbar hiding icons problems using navegationdrawer

I have a problem my action bar hides some icons and displays other section of navegationdrawer according to selected. (All fundiona right in the first round , the second round no longer responds to changing icons but if you change the section of navdrawer)


@Override public void onNavigationDrawerItemSelected(int position) { Toast.makeText(this, "Menu Seleccionado Numero " + position, Toast.LENGTH_SHORT).show(); android.support.v4.app.Fragment fragment = null; // Actualiza el contenido principal reemplazando fragmentos FragmentManager fragmentManager = getSupportFragmentManager();



switch (position) {
case FRAGMENT_MAIN_POSITION:
fragmentManager
.beginTransaction()
.replace(R.id.container,
Home_Fragment.newInstance(position + 1)).commit();
isPrinpal = true;
break;
case FRAGMENT_1_POSITION:
fragmentManager
.beginTransaction()
.replace(R.id.container,
Perfil_Fragment.newInstance(position + 1)).commit();
isPerfil = true;
break;
case FRAGMENT_2_POSITION:
fragmentManager
.beginTransaction()
.replace(R.id.container,
Estudios_Fragment.newInstance(position + 1)).commit();
isEstudio = true;
break;
case FRAGMENT_3_POSITION:
fragmentManager
.beginTransaction()
.replace(R.id.container,
Trabajos_Fragment.newInstance(position + 1)).commit();
isTrabajo = true;
break;
case FRAGMENT_4_POSITION:
fragmentManager
.beginTransaction()
.replace(R.id.container,
Crear_Fragment.newInstance(position + 1)).commit();
isCrear = true;
break;
case FRAGMENT_5_POSITION:
fragmentManager
.beginTransaction()
.replace(R.id.container,
Enviar_Fragment.newInstance(position + 1)).commit();
isEnviar = true;
break;
default:
break;
}

}

//metodo probado ahora borrar si no va
private boolean isPerfil = false;
private boolean isEstudio = false;
private boolean isTrabajo = false;
private boolean isPrinpal = false;
private boolean isCrear = false;
private boolean isEnviar = false;

//metodo para mostrar actionbutons segun seleccion en navdrawer
@Override
public boolean onPrepareOptionsMenu(Menu menu) {

if (isPrinpal) {
MenuItem item = menu.findItem(R.id.añade_Estudios);
item.setVisible(true);
MenuItem item2 = menu.findItem(R.id.añade_Trabajos);
item2.setVisible(true);
MenuItem item3 = menu.findItem(R.id.añade_Perfil);
item3.setVisible(true);

this.invalidateOptionsMenu();
}

if (isPerfil) {
MenuItem item = menu.findItem(R.id.añade_Estudios);
item.setVisible(false);
MenuItem item2 = menu.findItem(R.id.añade_Trabajos);
item2.setVisible(false);
MenuItem item3 = menu.findItem(R.id.añade_Perfil);
item3.setVisible(true);

this.invalidateOptionsMenu();
}

if (isEstudio) {
MenuItem item3 = menu.findItem(R.id.añade_Perfil);
item3.setVisible(false);
MenuItem item2 = menu.findItem(R.id.añade_Trabajos);
item2.setVisible(false);
MenuItem item = menu.findItem(R.id.añade_Estudios);
item.setVisible(true);

this.invalidateOptionsMenu();
}

if (isTrabajo) {
MenuItem item = menu.findItem(R.id.añade_Estudios);
item.setVisible(false);
MenuItem item3 = menu.findItem(R.id.añade_Perfil);
item3.setVisible(false);
MenuItem item2 = menu.findItem(R.id.añade_Trabajos);
item2.setVisible(true);

this.invalidateOptionsMenu();
this.invalidateOptionsMenu();
this.invalidateOptionsMenu();
}

if (isCrear) {
MenuItem item = menu.findItem(R.id.añade_Estudios);
item.setVisible(false);
MenuItem item3 = menu.findItem(R.id.añade_Perfil);
item3.setVisible(true);
MenuItem item2 = menu.findItem(R.id.añade_Trabajos);
item2.setVisible(false);

this.invalidateOptionsMenu();
}


if (isEnviar) {
MenuItem item = menu.findItem(R.id.añade_Estudios);
item.setVisible(false);
MenuItem item3 = menu.findItem(R.id.añade_Perfil);
item3.setVisible(false);
MenuItem item2 = menu.findItem(R.id.añade_Trabajos);
item2.setVisible(true);

this.invalidateOptionsMenu();
}

return super.onPrepareOptionsMenu(menu);
}

Aucun commentaire:

Enregistrer un commentaire