Qual è la differenza tra android.app.Fragment
e android.support.v4.app.Fragment
e quali sono le circostanze in cui ciascuno dovrebbe essere utilizzato?Differenza tra android.app.Fragment e android.support.v4.app.Fragment
risposta
android.support.v4.app.Fragment
è la classe Fragment nella libreria di supporto di Android, che è un pacchetto di compatibilità che consente di utilizzare alcune delle funzionalità più recenti di Android nelle versioni precedenti di Android.
android.app.Fragment
è la classe Fragment nella versione nativa di Android SDK. È stato introdotto in Android 3 (API 11).
Se si desidera che la propria app utilizzi frammenti e desideri utilizzare i dispositivi di destinazione prima dell'API 11, è necessario utilizzare android.support.v4.app.Fragment
. Tuttavia, se utilizzi solo dispositivi con API 11 o versioni successive, puoi utilizzare android.app.Fragment
.
Io uso android.support.v4.app.Fragment
esclusivamente.
Tutte le app che scrivo devono supportare direttamente Android 2.3 e questo è il modo più semplice per farlo.
Se si supporta 11+, attenersi a android.app.Fragment
.
In questo caso ti stai perdendo un sacco di funzionalità che esistono nel supporto libreria ma solo in quella nativa dopo un determinato livello API. getChildFragmentManager() ad esempio non è disponibile fino al livello 17. Il mio consiglio è di usare solo i frammenti di supporto e fingere che quello nativo non esista. – Johan
android.support.v4.app.Fragment
è una libreria che è possibile utilizzare per ottenere la retrocompatibilità per la versione API precedente.
I frammenti sono stati aggiunti al livello API 11 (insieme ad altre funzionalità), è necessario includere tale libreria per estendere tali funzioni ai dispositivi pre-API 11. Questa è una libreria utile e suggerisco di dare un'occhiata a ActionBarSherlock, che estende la barra delle azioni ai dispositivi pre-API v11.
Se l'applicazione è mirata per API 11 o superiore, è possibile utilizzare android.app.Fragment
e il file APK sarà più piccolo.
In caso contrario, aggiungere la libreria android.support.v4.app.Fragment
al progetto per supportare versioni precedenti di API Android (Android 3.x).
Le risposte sono abbastanza di destra
Ma come il passare del tempo e secondo https://en.wikipedia.org/wiki/Android_version_history è abbastanza raro che la tua nuova app Android deve supportare dispositivi con Android SDK meno di 11.
Così si può dimenticare android.support.v4.app.Fragment
e utilizzare in tutta sicurezza android.app.Fragment
nella tua app.
- 1. Differenza tra support-v4.app.fragment e app.fragment?
- 2. Oggetto frammento errato Tipo di argomento del secondo trovato 'Android.support.V4.app.Fragment.' necessaria 'Android.app.Fragment'
- 3. mio frammento non può essere lanciato a android.support.v4.app.Fragment
- 4. errore in typeanumber - android.support.v4.app.fragment non può essere risolto
- 5. Utilizzo di android.app.Fragment con ViewPager in Android 3.0 o successivo
- 6. android.support.v4.app.FragmentTransaction richiesto
- 7. android.support.v4.app.FragmentManager O android.app.FragmentManager?
- 8. Android: soluzione alternativa per support.v4.app.Fragment -> Framment classcastexception?
- 9. La differenza tra $ * e $ @
- 10. Differenza tra $ # e $ {# @}
- 11. Differenza tra. e #
- 12. MySQL: Differenza tra ",", "e"
- 13. Differenza tra "o" e "||"
- 14. Differenza tra unwrapObservable e()
- 15. Differenza tra oggetto e *?
- 16. Differenza tra "**/* /" e "** /"?
- 17. Differenza tra jquery e $
- 18. CMake: differenza tra $ {} e "$ {}"
- 19. Differenza tra ". +" E ". +?"
- 20. VBA: Differenza tra & e +
- 21. Differenza tra numpy.logical_and e &
- 22. Differenza tra | = e^= css
- 23. Differenza tra `% in%` e `` ==
- 24. android.support.v4.app.FragmentManager e android.app.FragmentManager in ViewPager
- 25. Differenza tra Dizionario e Hashtable
- 26. Differenza tra SCM e SVN
- 27. differenza tra RDLC e SSRS
- 28. Differenza tra REMOTE_HOST e REMOTE_ADDR
- 29. Differenza tra "\ n" e Environment.NewLine
- 30. Differenza tra QSharedPointer e QSharedDataPointer?
Vedere anche "Utilizzo di FragmentStatePagerAdapter SENZA libreria di supporto": http://stackoverflow.com/questions/18512294/using-fragmentstatepageradapter-without-support-library – CJBS
Se si esegue l'override suAttach(), vedere questo thread per evitarlo essere chiamato in alcune circostanze con android.app.Fragment: https://stackoverflow.com/questions/32083053/android-fragment-onattach-deprecated – Hong