Ich habe an Fragmenten gearbeitet und bin auf zwei Dinge Activity
gestoßen, FragmentActivity
die mehrmals verwendet werden. Ich will wissen , dass es einen Unterschied zwischen diesen beiden, denn wenn ich geändert Activity
mit FragmentActivity
, es keine Auswirkungen auf die App hatte.
228
FragmentActivity
erbt diegetLoaderManager
undgetFragmentManager
Methoden vonActivity
und als Ergebnis wird sich der Compiler nicht beschweren. Möglicherweise importieren Sie auch die falschenLoaderManager
undFragmentManager
Klassen. Stellen Sie sicher, dass Sie diese Klassen aus dem Support Package (android.support.v4.app
) importieren , nicht aus dem Android SDK (android.app
).Activity
Sie, wenn Sie verwendenandroid.app.Fragment
; VerwendenFragmentActivity
Sie, wenn Sie verwendenandroid.support.v4.app.Fragment
. Fügen Sie niemals einandroid.support.v4.app.Fragment
an ein anandroid.app.Activity
, da dies dazu führt, dass eine Ausnahme ausgelöst wird.Fragments
in einer Anwendung). Fahren Sie dann mit diesem Tutorial fort (wie Sie dieFragment
s aus dem Support-Paket verwenden). Die Dokumentation auf der Entwicklerseite ist ebenfalls lesenswert.FragmentActivity
ist Teil der Support-Bibliothek undActivity
die Standardklasse des Frameworks. Sie sind funktional gleichwertig.Sie sollten immer
FragmentActivity
undandroid.support.v4.app.Fragment
anstelle der Plattform StandardActivity
undandroid.app.Fragment
Klassen verwenden. Die Verwendung der Plattformstandards bedeutet, dass Sie sich auf die Implementierung von Fragmenten verlassen, die auf dem Gerät verwendet wird, auf dem Sie ausgeführt werden. Diese sind oft mehrere Jahre alt und enthalten Fehler, die inzwischen in der Support-Bibliothek behoben wurden.quelle
minSdkVersion
der Support-Bibliothek ist 14 seit Version 26.xx