Lo stato di visualizzazione di frammento di Android all'interno di un host di tab

Possibile duplicazione:
Separa Back Stack per each scheda in Android utilizzando Fragmenti

Recentemente ho iniziato a lavorare su un'applicazione con frammenti all'interno di un host di tabs all'interno di un FragmentActivity .. la documentazione di Android ha detto di farlo in quanto la class TabActivity è ormai obsoleta. Per utilizzare frammenti, sto usando la libreria di supporto Android v4.

  • Denial of Permission: questo richiede android.permission.INTERACT_ACROSS_USERS_FULL
  • Qual è il modo migliore per risolvere l'exception UNEXPECTED TOP-LEVEL?
  • Il titolo di DialogFragment di Android non viene mostrato
  • Temporizzazione predefinita di OkHttp / Retrofit
  • ActionBarSherlock e FragmentTabsPager
  • Attività di Android non visualizzata quando lo schermo si triggers e lo schermo di block non è distriggersto
  • Attualmente la mia applicazione consiste di una scheda all'interno del quale esistono i frammenti. Per navigare a nuovi frammenti all'interno della scheda che utilizzi il seguente codice (che sembra essere corretto sulla base della documentazione):

    FragmentTransaction ft = fragmentManager.beginTransaction(); ft.replace(containerId, newFragment); ft.addToBackStack(null); ft.commit(); 

    Tutto era buono e buono fino a quando non ho colpito la chiave indietro per navigare in un frammento precedente e ho capito che tutto il mio stato di vista era stato quasi distrutto .. quello che stava succedendo è che il metodo onCreateView () veniva chiamato nuovamente sul mio precedente frammento anche se le sue idee erano già state create … perché è questo? Ho cercato intorno a come gestire correttamente lo stato con frammenti, ma non riesco a trovare una documentazione decente su questo.

    Quello che poi ho provato è stato quello di utilizzare il

     ft.add(containerId, newFragment); 

    invece di

     ft.replace(containerId, newFragment); 

    Questo fatto ha funzionato abbastanza bene in quanto il mio stato di vista è stato mantenuto – onCreateView () non è stato chiamato each volta che i miei precedenti frammenti sono stati mostrati. Tuttavia, quello che ho cominciato a notare è che potrei interagire con i componenti (button, ecc.) Da frammenti precedenti che si trovano sotto il frammento attuale, anche se non ho potuto vedere i componenti !? Ho letto da qualche parte che il seguente metodo dovrebbe essere utilizzato per salvare uno stato:

     public void onSaveInstanceState (Bundle outState) 

    Ho implementato questo metodo, tuttavia, non è mai stato chiamato! Ho anche notato che i pacchetti passati ai methods onCreateView () e onActivityCreated () sono sempre nulli. Certamente Google non ha reso difficile get qualcosa di simile e devo mancare qualcosa? Sarà molto apprezzato qualunque aiuto su come gestire correttamente uno stato di visualizzazione di un frammento!

    Grazie.

  • Come implementare 'pop-up box' in Android simile a Viber (quando viene ricevuto un messaggio)
  • Cassetta di navigazione Attributo di layout specifico dell'API Android
  • come posso scaricare il file audio dal server per url
  • Ottenete il caricatore della class di intenti. Vorrei impostare un text in un textView in secondActivity per call firstActivity (in realtà ho bisogno del nome del loader di class)
  • C'è un modo per utilizzare le funzionalità in Android 2.1 / 2.2 pur mantenendo una versione minSDK a 3?
  • Come smuovere un Snackbar utilizzando il proprio button Azione?
  • One Solution collect form web for “Lo stato di visualizzazione di frammento di Android all'interno di un host di tab”

    Date un'occhiata a questa domanda – credo che i due possano essere collegati e si potrebbe essere in grado di lavorare intorno a questo problema.

    Separa Back Stack per each scheda in Android utilizzando Fragmenti

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.