10

La mia applicazione implementa un cassetto di navigazione per cambiare i frammenti. Che cosa ho bisogno ora è di aggiornare gli elementi cassetto navigazione se l'utente è connessoAggiorna lista Navigatore listview

Per esempio: loggato elementi di navigazione simile a questa

casa My Info Logout

disconnesso elementi di navigazione simile a questa

casa Registrati Accesso

Il set u p del mio progetto è un'attività di base che estende il frammento di navigazione e passa a un frammento corrente in base alla voce del cassetto di navigazione selezionata.

Tutti i miei altri file sono frammenti che cambiano a seconda della voce del cassetto di navigazione selezionata.

Ho questo tipo di cassetto di funzionamento ma navgation si aggiorna solo quando accedo, quindi chiudo completamente l'app e quindi lo riavvio.

risposta

16

L'attività deve essere a conoscenza del ListView del tuo cassetto. Quindi quando accedi, devi solo dire alla tua attività di dire a ListView che i dati sono cambiati o ricaricarli completamente.

Nel vostro frammento (o ovunque si accede in realtà):

public void logIn() { 
    ... 
    ((DrawerActivity) getActivity()).updateDrawer(); 
} 

Nel vostro DrawerActivity:

public void updateDrawer() { 
    mListViewAdapter.notifyDataSetChanged(); 
    // OR 
    mListView.setAdapter(new AdapterShowingTheRightTitles()); 
} 
Problemi correlati